301リダイレクトや302リダイレクトを理解してSEO対策を施す(WordPressプラグインも紹介)

よしみです。

サイト移転をするときに301リダイレクトと302リダイレクトで悩みませんか?移転なので大概は301リデイレクトです。しかし、時たま「複数のサイト結合」という案件にあたることがあります。いくつかのメディアやサイトを一つのドメイン配下に設置しポータルサイト化するという案件です。

今回の案件はこうです。

WordPressで構築されてるサイトが複数あります。それを一つのポータルサイトへ移行する。ポータルサイトではカテゴリーを作り、そこに移植元のコンテンツを設置。記事内容などは90%変えることはない。301リダイレクトをしてSEO的にしっかり対策をしておきたい。

リダイレクトの概要とWordPressプラグイン「Redirection」について紹介します。

301リダイレクトと302リダイレクトって何?

サイトでリニューアルした際にURLが変わってしまった時、古いURLをそのままにしておき、さらにコンテンツをそのままにしておくとGoogleよりコピーコピーコンテンツとしてペナルティを受ける場合があります。

ざっくり申し上げますと。、ドメインが存在すれば検索にヒットしてしまいます、ユーザーにとって有益なものではないです。そして、コピーコンテンツでどちらが正しい(良い)コンテンツなのかも迷ってしまいます。ということでGoogleは制裁を加えるのです。

  • 301リダイレクト:恒久的転送(リダイレクト)
  • 302リダイレクト:一時的な転送(リダイレクト)

恒久的って何?てことですが、一時的な転送の逆です。そう、その状態がいつまでもその状態が続く様です。
参考:ページの URL の変更と301リダイレクトの使用


英語なので何いっているのか・・・

要点をまとめますと

  • トップに全てのページをリダイレクトするのではなく対応する個々のページにリダイレクトする
  • 1つのサイトで301リダイレクトできるページの数に上限はない
  • サイトを複数またぐような301リダイレクトは推奨しない

説明しているようです。

結局、どっちがいいのさ・・・という質問があるのであれば、サイトを移転するときは301リダイレクトをするです。

WordPressプラグイン「Redirection」を使った301リダイレクト

サイトを移転するときは「.htaccess」を使うのが一般的なのですが、Wordpressサイトであれば便利なプラグイン「Redirection」があるので紹介します。

WrodPressダッシュボードからプラグインインストールで「Redirection」を検索しインストールしてください。

Redirection

転送したいURLをソースURLに追加し、転生先URLをターゲットURLに入力して「新しい転送ルールを追加」です。

Redirection
転送設定が完了されるとプラグインダッシュボードの転送ルールページに、URLが追加されます。これで完了です。

Redirection非常に簡単ですよね。.htaccessやApacheといった少し専門的な知識も必要なく設定可能です。

>> Redirection

「.htaccess」でのリダイレクト処理

.htaccessに直接書くことで詳細な設定も可能です。

  • サイト全体を別サイトに転送させる
  • 条件に合致したページを別のURLを転送させる
  • 個別のページを別のURLに転送させる

.htaccessはエンジニアにより書き方が異なるので、最終的にはエンジニアに相談してください!(先に保険かけておきます。)

僕はさくらサーバーを利用しているので、そこ主体で紹介します。

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

追記するときは「# BEGIN WordPress」より前に書くようにしてください。

1.ドメインが変更になる
ドメインが変更になるという一般的なケースです。「ドメインが何かしらの関係でスパム扱いになった」や「SEO的に変なリンクが増えすぎて対処ができなくなってしまった」など想定される場合は多数あります。

RewriteCond %{HTTP_HOST} ^(www.XXXXX.com)(:80)? [NC]
RewriteRule ^(.*) http://www.YYYYY.com/$1 [R=301,L]

「www.XXXXX.com」が古く、「www.YYYYY.com/」が移転先になります。

2.個別ページのリダイレクト

RewriteRule ^/old-page1.html$ http://www.example/new-page1.html [R=301,L]
RewriteRule ^/old-page2.html$ http://www.example/new-page2.html [R=301,L]
RewriteRule ^/old-page3.html$ http://www.example/new-page3.html [R=301,L]

少量のページであればこの記述で個別対応可能ですが、500ページのコンテンツ移行とかやりたくないですよね。

3.サイト(ブログ)全体をリダイレクトさせる

# リダイレクトの設定
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)  [R=301,L]
</IfModule>

めんどくさいときはやはりサイト全体301リダイレクトですね!

最後に

.htaccessを自分で記述するのは大変ですよね。(今はあネットで検索すれば.htaccessの書き方すらヒットするようになったので、非常に便利になりました。僕みたいなエセエンジニアには非常にありがたいです!)

正規表現というものがあり、mod rewritehttp://okumocchi.jp/php/re.phpで紹介されています。

しかし、初心者が手を出すには非常に難解です。無理して.htaccessに記述するより、WordPressサイトであればWordPressプラグイン「Redirection」を利用した方が大幅な時間短縮になります。