0

サイトの URL を移動していたので、各ページから新しいサイトの同等のページへの 301 リダイレクトを設定しました。これに使用する構文は次のとおりです。

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

うまくいかないのは、古いホームページを送信する方法です-http://oldsite.co.ukからhttp://newsite.co.ukへ-ホームページは/ indexなしでdomain.co.ukにあるため.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 に答える