0

正在移动网站的 url,因此我们设置了从每个页面到新网站上的等效页面的 301 重定向。我们为此使用的语法是:

redirect 301 /about-us.html http://newiste.co.uk/about-us.html

我无法解决的是如何将旧主页 - http://oldsite.co.uk发送到http://newsite.co.uk - 因为主页位于 domain.co.uk 没有 /index .html 也有与 www 类似的问题。与非 www。

像这样在旧域上配置我的 .htaccess 文件是正确的方法吗?

<Files ~ "^\.(htaccess|htpasswd)$">
deny from all
</Files>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.oldsite\.co\.uk)(:80)? [NC]
RewriteRule ^(.*) http://oldsite.co.uk/$1 [R=301,L]
order deny,allow

redirect 301 / http://newsite.co.uk
redirect 301 /about-us.html http://newsite.co.uk/about-us.html
redirect 301 /contact-us.html http://newsite.co.uk/contact-us.html
redirect 301 /bespoke-furniture.html http://newsite.co.uk/bespoke-furniture.html
redirect 301 /how-we-work.html http://newsite.co.uk/discovery.html
4

1 回答 1

1

要重定向根文档,您可以使用以下重写规则:

RewriteRule ^/?$ http://newsite.co.uk/ [R=301,L]

还对您的评论:

RewriteCond %{HTTP_HOST} ^(www\.oldsite\.co\.uk)(:80)? [NC]

端口号绝不是 HTTP_HOST 变量的一部分,最有效的是尽可能避免使用正则表达式:

RewriteCond %{HTTP_HOST} =www.oldsite.co.uk [NC]

您的代码redirect 301 / http://newsite.co.uk将重定向所有内容,而不仅仅是根/

于 2012-11-21T13:58:58.447 回答