htaccess文件重定向除了

时间:2016-02-23 13:36:09

标签: apache .htaccess redirect

我正在尝试将所有网页重定向到主页,除了特定网址中的网页。因此,为了澄清将所有页面重定向到根目录,请访问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等时,不应该重定向

1 个答案:

答案 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]

在测试此重定向规则之前,请记得清除浏览器缓存。