2017-01-11 63 views
0

我需要以下条件:重写规则根页面

(1)mysite.com应该被重定向。

(2)mysite.com/index.html应该不是被重定向。

但页面上这一领域的其余部分应被重定向:

(3)mysite.com/xxx应该被重定向到new.mysite.com/xxx

下的.htaccess完全适用于点(2)和(3):

RewriteEngine On 
RewriteRule ^index\.html$ - [L] 
RewriteRule ^(.*)$ http://new.mysite.com/$1 [R=301,L] 

但是我怎么能实现点(1)?

+0

很可能是因为一个'DirectoryIndex'在您的HTTP服务器主机的配置设置。这意味着您不希望重定向的实际请求是'https:// example.com /',但是您只为'https:// example.com/index.html'定义了一个例外。你想添加另一个异常。 – arkascha

+1

你需要包含'RewriteCond'来排除'mysite.com'。 – Lag

回答

1

要排除你的根,只要把你的规则上面以下条件

RewriteCond %{REQUEST_URI} !^/$