私には小さなジレンマがあります。
私はほとんどのプロジェクトに取り組んでいます今年、古いドメイン名を持っていました。 Googleが古いドメインのサイト全体をどのようにインデックス付けしたかわからないので、心配しています。新しいドメイン名にサイトを配置したいので、301を実行することが前進だと思います。すべての動的ページでこれを行う必要があります。良い点は、ページ構造が同一であることです。
これを行う最良の方法に関するアドバイスは大歓迎です。
回答:
回答№1は4これにより、olddomain.comからnewdomain.comにすべてがリダイレクトされます。
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?olddomain.com$
RewriteRule ^(.*)$ http://www.newdomain.com/$1 [R=301,QSA,L]
そのmod_rewriteコードを古いドメインの.htaccessに入れることができます。
回答№2の6
最良の方法は、 .htaccess
まだ持っていない場合はファイルを作成し、htmlフォルダに貼り付けます。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^old/page new/page [R=301,L] #can copy and paste this as many times as needed
</IFModule>
答え№3の2
ホスティング場所がmod_rewriteをサポートしていない場合(そう、ホスティング会社が存在します)、または奇妙で未知の理由で機能しない場合は、よりシンプルで広く利用可能なディレクティブを使用してください。 リダイレクト または RedirectMatch.
そのような行を .htaccess
古いドメイン:
Redirect 301 / http://www.newdomain.com/
上記の行はすべてのURLを古いドメインから新しいドメインにリダイレクトします。301コード(永続的なリダイレクト)はSEOの観点から正しいことです。
そのような単一のページをリダイレクトするか、特定の新しい場所を指す必要がある場合、そのようなルールを使用します(正確なURLを指定するだけで上記と同じです)。
Redirect 301 /help-shipping.html http://www.newdomain.com/help/shipping.php
Apache mod_rewriteマニュアルにはページがあります: mod_rewriteを使用しない場合。この特定のシナリオはそこにリストされています(リダイレクトは ライター リソースの観点から見ると、RewriteRuleは非常にビジーなサーバーで問題になる可能性があります)。
回答№4の場合は1
php経由でそれを行う方法があります(.htaccessが最適です)が、これは1〜2回は私にとって便利です。
<?php
//this can be set however you need it to be
$dynamic_redirect = "http://foo.com".$your_variable;
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".$dynamic_redirect);
exit();
?>