.htaccess 301从非www重定向到www显示浏览器历史记录中的两个URL

时间:2013-04-03 04:54:25

标签: .htaccess

我使用.htaccess进行了301重定向,将http://domain.com重定向到http://www.domain.com, 我这样做了。

Options +FollowSymlinks
RewriteEngine on
<IfModule mod_rewrite.c>
Rewritecond %{http_host} ^domain.com [nc]
Rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]
</IfModule>

我几个月前写过这段代码它到目前为止工作得很好,但现在突然间它显示了浏览器历史记录中的两个url,同时正确地重定向,

1st url is http://domain.com

2nd url is http://www.domain.com

我删除了行Options +FollowSymlinks,但它仍然显示了两个网址。

请说明为什么我在浏览器历史记录中获得两个网址时,我应该获得重定向的网址。

由于

1 个答案:

答案 0 :(得分:0)

您现在可以在浏览器历史记录中获得2个网址,这可能是因为您已升级浏览器,更改浏览器设置或使用其他浏览器。 FollowSymlinks选项与浏览器的历史记录无关。告诉网络服务器可以在打开该选项的目录中按照符号链接进行操作。

您在浏览器历史记录中看到这两个网址的原因是您要同时访问这两个网址

当您转到http://domain.com时,您的浏览器会发送解析domain.com主机,然后向该主机发送请求。它取回的回复基本上是&#34; 你要找的不在这里,而是转到http://www.domain.com,然后在你下次寻找http://domain.com时继续去那里/ EM>&#34 ;.然后,浏览器通过解析http://www.domain.com主机,然后向该主机发送请求来处理www.domain.com请求。

因此,您已获得http://domain.com的浏览记录,然后是http://www.domain.com