WordPressでサーバーを引っ越し、ドメインを取って運用する際、新サイトへ301リダイレクトを設定する方法

例えばロリポップで運営していたサイトをエックスサーバーに引っ越しさせて、ドメインも変更した場合、まったく同じ内容のサイトが2サイト存在してしまいます。それをリダイレクトして古いサイトのアドレスをクリックすると、新しいサイトが表示される方法を書きたいと思います。

スポンサーリンク

301リダイレクトとは

301リダイレクトは、Webサイトの転送をするための命令になります。サイトのURLが、一時的な変更ではなく恒久的に変更される場合に推奨されています。
301リダイレクトを用いることで、旧URLでWebサイトに来た人を、自動的に新URLの、移転後のWebサイトへ誘導することができます。

301リダイレクトのSEO上の効果

301リダイレクトによって、アドレスが転送される場合、検索エンジンには転送前のURLが持っていた被リンク等の評価を、転送先のURLに引き継がせることができるようです。よって例えば転送前のURLが外部リンクを数多く集めている場合には、301リダイレクトで適切に転送をかけることで、これまでの得ていた被リンク面での評価を新しいURLにそのまま引き継ぐことができます。
※とはいえ実際にはまったく同じようになるわけではないようです。アクセス減が確認されることもあります。

最近ではSSL化が推奨されていますので、「http:」→「https:」にしたい場合も多いと思います。

301リダイレクトの設定方法

「.htaccess」に下記を書きます。

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ http://(新URL)/$1 [R=301,L]

http://(新URL)に自分のアドレスを書きます。もしSSL化しているならhttps://●●と書きます。

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://(新URL)/$1 [R=301,L]

もしくは下記でも大丈夫です。

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

WordPressを使っていると、データはフォルダに入れているけれど、実際のアドレスはフォルダを表示させない場合があると思います。

フォルダ/
にWordPressは入れているけれど、
実際は
知りたいねっと | いろいろな知りたいを書き記しています

と表示させる場合、「.htaccess」に記載していると思います。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

こんな感じですでに「.heaccess」に色々書かれている場合、どこに書いたらいいのか?となると思います。
リダイレクトを設定する際、絶対的なルールが決まっているわけではないようですが、とりあえず迷ったら一番上に書くのがよいかなと思います。

SSL化で転送設定をしたいのにエラーが出る場合の対処として下記の記事もよかったら参考にしてください。

SSL化で.htaccessにhttpからhttpsへリダイレクト設定してもうまくいかない、500エラー時に確認すること
昔に比べてSSLの導入は敷居が低くなったと思います。googleでもWebサイトを常時SSL(https)にすると、SEO(検索順位)を優位にするというアナウンスもありましたので、切り替える方も増えていると思います。ここでは.hta...

コメントをどうぞ