我已经find了一些不同的解决scheme,应该写在.htaccess文件中,但由于某些原因,它们不能很好地工作。
我想redirect从旧网站的所有内容到新网站 – www.oldsite.com/first/articleredirect到www.newsite.com/first/article
等等。 我听说,这是永久redirect的方式,当将网站从一个域名转移到另一个域名时,search引擎不会对内容进行双倍化处理。
所以,如果任何人都可以提供工作代码,那就太好了。 解释为什么这将起作用,其中的意思是在真棒类别。
thanx一堆。
PS,我已经mod_rewrite已启用。
我强烈build议John Gruber 使用.htaccessredirect来标准化Web服务器地址 。 “获得”WWW“PREFIXES”部分给出了一个简单的例子,你需要简单的重写以及一个清晰的解释。
在他的例子中,你可以分别用www\.oldsite\.com代替www\.daringfireball\.net和www.newsite.com作为daringfireball.net ,给你如下:
RewriteEngine on RewriteBase / RewriteCond %{HTTP_HOST} ^www\.oldsite\.com$ RewriteRule (.*) http://www.newsite.com/$1 [R=Permanent]
或者,在“从.net到'.NET'redirect”一节中,他解释了如何使用mod_alias来完成你所要求的function,如下所示:
RedirectMatch permanent (.*) http://www.newsite.com$1
他的文章是对这两种方法的一个很好的概述,并给你select最好的方法的知识(显然,mod_alias是较短的实现,但是从我的angular度来看,mod_rewrite往往是更加灵活的)。 他还链接到Dave Child的优秀mod_rewrite备忘单 。
用下面给出的代码创build一个.htaccess文件。 它将确保您旧域中的所有目录和页面将正确redirect到您的新域。 .htaccess文件需要放在旧网站的根目录下(即放置索引文件的目录)
Options +FollowSymLinks # RewriteEngine on - You have this enabled already, so this is not required. RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]
请用上面的代码replace您的实际域名www.newdomain.com。