301 将所有页面重定向到新域上的同一页面
Posted
技术标签:
【中文标题】301 将所有页面重定向到新域上的同一页面【英文标题】:301 Redirect all pages to same page on new domain 【发布时间】:2014-09-23 21:54:40 【问题描述】:这是.htaccess redirect all pages to new domain 和How to 301 redirect all pages to the same pages on new domain 的后续问题。
具体来说,以下解决方案有何不同?
RewriteRule
解决办法:
RewriteEngine on
RewriteRule ^(.*)$ http://newdomain.com/$1 [R=301,L]
Redirect
解决办法:
Redirect 301 / http://newdomain.com/
【问题讨论】:
【参考方案1】:这是服务器重定向与浏览器重定向。在第一种情况下,将进行内部重定向,并且浏览器将收到来自目标服务器的响应。
在第二种情况下,将为浏览器提供 301 代码(永久移动)和带有新 URL 的 Location 标头,此时它需要向目标服务器发出第二次请求。
您可以自己看到差异,例如通过在 Firefox 中安装“Live HTTP Headers”插件并检查浏览器接收到的所有请求。
【讨论】:
+ 考虑到 redirect 解决方案的额外往返行程,我认为 rewrite 解决方案的性能更高。 正确,但有安全方面的考虑。我认为,一般来说,显式浏览器重定向更安全以上是关于301 将所有页面重定向到新域上的同一页面的主要内容,如果未能解决你的问题,请参考以下文章
我如何 .htaccess 301 将所有页面/文件(除了一个)重定向到新域?