虚拟主机不会重定向
问题描述:
这是我的虚拟主机文件夹:虚拟主机不会重定向
SeverName domain.com
ServerAlias www.domain.com
<Directory />
Options -Indexes +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^[^\./]+\.[^\./]+$ [NC]
RewriteRule ^/(.*)$ http://www.domain.com/$1 [R=301,L]
RewriteBase/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . archive.php [L]
</Directory>
domain.com并不重定向到www.domain.com。
下面的部分工作正常,但将页面重定向到archive.php。
答
如果从匹配模式中删除/
,规则是否工作?
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]
如果请求是http://domain.com没有尾随/
,那么当你与一家领先的/
写的规则可能不匹配。或者,mod_rewrite可能会删除前导/
,因为您在<Directory>
上下文中有RewriteBase /
。这就是RewriteRule docs(“什么是匹配?”框)似乎说。
+0
有或没有/似乎会导致不同的错误 – user1052448
这个问题可能更适合http://webmasters.stackexchange.com/。 –
我认为在你的第一个RewriteCond中有一个输入错误:在匹配模式中,'{'应该是'['。 –
好抓Joachim。但是,仍然没有解决我的问题。 – user1052448