我有一个WordPress网站,我需要将数百个URL重定向到主页。我的 .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
这些类别页面重定向到我不想要的主页,所以我需要排除这些类型的包含"类别"的 URL 重定向到主页。
谢谢。
将第二条规则更改为:
RewriteCond %{QUERY_STRING} ^(?:page|mact)= [NC]
RewriteCond %{THE_REQUEST} !/(?:wp-admin|category)/ [NC]
RewriteRule ^ /? [L,R=301,NC]
这将从此重定向中排除/category/...
URL。
确保使用新的浏览器进行测试。