301使用特殊字符重定向.htaccess

时间:2018-01-17 15:17:06

标签: wordpress .htaccess redirect mod-rewrite

我有一个WordPress网站,我需要将数百个网址重定向到主页。我的.htaccess目前看起来像......

# BEGIN WordPress

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} \s/+index\.php[?/\s] [NC]
RewriteRule ^ /? [L,R=301]
RewriteCond %{QUERY_STRING} ^(?:page|mact)= [NC]
RewriteRule !^wp-admin/ /? [L,R=301,NC]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

重写正在解决我需要它如何工作的问题,它重定向仅在前端(不是后端WP)上包含页面 mact 的任何链接。我唯一的问题是我的类别页面看起来像这样......

www.domain.com/category/general/page/3/?page=page

这些类别页面会重定向到我不想要的主页,因此我需要排除这些类型的包含&#39;类别&#39;从重定向到主页。

感谢。

1 个答案:

答案 0 :(得分:0)

将您的第二条规则更改为:

RewriteCond %{QUERY_STRING} ^(?:page|mact)= [NC]
RewriteCond %{THE_REQUEST} !/(?:wp-admin|category)/ [NC]
RewriteRule ^ /? [L,R=301,NC]

这将从此重定向中排除/category/...个网址。

确保使用新的浏览器进行测试。