我正在尝试重定向此网址
example.com/wp-admin/admin-ajax.php?action=flare_get_counts&url=http%3A%2F%2Fexample.com%2Funix-tutorial-402-356-%2F&post_id=34&_wpnonce=8c7fc14726
到
example.com/unix-tutorial/
为此我写了这个重定向规则
RedirectMatch 301 ^/wp-admin/admin-ajax.php?action=flare_get_counts$ http://example.com/$3
但这条规则不起作用。重定向此URL的正确方法是什么?
答案 0 :(得分:0)
确保屏蔽您不想被解释为正则表达式的字符:
^/wp-admin/admin-ajax\.php\?action=flare_get_counts$
答案 1 :(得分:0)
您无法使用RedirectMatch
来匹配QUERY_STRING。请改用mod_rewrite
规则。
您可以在/wp-admin/.htaccess
文件中使用此代码:
RewriteEngine On
RewriteBase /wp-admin/
RewriteCond %{QUERY_STRING} ^action=[^&]+&url= [NC]
RewriteRule ^admin-ajax\.php$ /unix-tutorial/? [L,NC,R=302]
确保RewriteBase
行以下这是第一条规则。
答案 2 :(得分:0)
这是重定向AJAX请求的PHP / WP方式:
add_action( 'wp_ajax_flare_get_counts', 'so27188591_flare_redirect' );
add_action( 'wp_ajax_nopriv_flare_get_counts', 'so27188591_flare_redirect' );
function so27188591_flare_redirect()
{
if( isset( $_GET['action'] ) && $_GET['action'] == 'flare_get_counts' )
wp_safe_redirect( home_url( '/unix-tutorial/' ) );
exit;
}
答案 3 :(得分:0)
试试这个:
Redirect 301 /wp-admin/admin-ajax.php?action=flare_get_counts$ http://example.com/$3
希望这会对你有帮助。