我正在尝试将所有网页重定向到主页,除了特定网址中的网页。因此,为了澄清将所有页面重定向到根目录,请访问www.ourwebsite.com/mydir/link1 mydir中的所有页面都应该显示,但如果有人去mydir /他们应该重定向到家。
我正在使用wordpress,因此有一个.htaccess文件:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ / [R=301,L] // Redirects all to homepage
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
所以这应该将所有页面重定向到主页,但现在当有人输入/ mydir / link1或/ mydir / link2等时,不应该重定向
答案 0 :(得分:1)
您可以为例外添加条件:
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} !/(dist/|mydir/(link1|link2)) [NC]
RewriteRule . / [R=301,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
在测试此重定向规则之前,请记得清除浏览器缓存。