301リダイレクトを使った「WWWあり」と「WWWなし」の統一

僕のところに、毎月1,2件必ず寄せられる質問があります。

それは、「wwwあり」のURLと「wwwなし」のURLに関する質問です。
もう少し正確に言うと、「wwwあり」と「wwwなし」の統合です。

同じコンテンツを示すURLが、「http://www.example.com/」と「http://example.com/」のように、2つに分かれてしまっている場合があります。

人間にとっては同じでも、検索エンジンにとってはまったく別のページになります。

被リンクが両方に張られていたら分散してしまうし、それよりもなによりも異なるURLで同じコンテンツなので、複製コンテンツとしてマークされてしまう危険も付きまといます。

本来ならサイトの構築を始める前に、「wwwあり」で運用するのか、「wwwなし」で運用するのか決めるべきですが、何らかの事情で分かれてしまっていることもあるでしょう。

そこで、「wwwあり」と「wwwなし」のURL(ドメイン)を、どちらか片方に統一する設定を説明します。

301リダイレクトを利用します。

301リダイレクトは、ドメインの引越しに使われる仕組みです。
ドメインを移転しても、サーチエンジンが認識している移転元のサイトの情報は、移転先のサイトへ引き継がれます。
301リダイレクトは、サーチエンジンが推奨しているドメイン移転方法です。

過去に301リダイレクトの詳細について書いたので、301について十分理解してなければ、まずそちらを読んでください。
『301リダイレクトの設定方法』

301リダイレクトを使った「wwwあり(www.example.com)」と「wwwなし(example.com)」の設定するには、次のように「.htaccess」ファイルに記述します。

  • 「wwwあり」に統一する場合

    Options +FollowSymLinks
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^example\.com$
    RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]

  • 「wwwなし」に統一する場合

    Options +FollowSymLinks
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^www\.example\.com$
    RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

間違えないようにコピペして、「example.com」を自分のドメインに置き換えてください。
「/(スラッシュ)」をひっくり返したバックスラッシュは環境によっては「¥(円マーク)」はで表示されます。

レンタルサーバーによっては、何もしなくても「wwwなし」を「wwwあり」に自動的に転送してくれるところもあります。
ですが、通常は自分でドメインを設定するので、もし分けて作ってしまっていてその後統一する必要が出てきたときには、この記事で解説した方法を使ってください。

あと、「wwwあり」と「wwwなし」のどちらを使うべきかという問題ですが、これはお好きなようにどうぞ。

SEO的には、なんら違いはありません。

事実上のウェブ標準になっていて慣れ親しんだ、「wwwあり」はホームページとして分かりやすいです。
でも「wwwなし」は、逆に目立つし、すっきりしてシンプルになりますね。

大切なことは、「wwwあり」と「wwwなし」の2つで、同じコンテンツを展開してはいけないということです。

P.S.
「wwwあり」と「wwwなし」の統一を、技術用語でURLの「Canonicalization(正規化)」と言います。

Googleは、Googleウェブマスターツールで、「wwwあり」と「wwwなし」の関連付けを指定できます。

Googleウェブマスターツールでの使用するドメインの設定