Finger face with a questionはい、ごめんください。中盤からアドベントカレンダーを落としまくっているという失態をかましておりますが、今年の反省は来年に生かします。鬼がプークスクスしてても気にしない。

さて、今回はウェブ解析とは若干離れますが、リンクの正規化と rel=”canonical” が少し気になったのでこの話題。SEO 的には単純にこっちがおすすめ、というものではなく、使いどころを間違えないように使うと効果を発揮するよ、という内容です。

301 リダイレクトって何?

そのページにアクセスした際に、301(Moved Permanently)というステータスコードを返す(通常は200)ことで「このページは別のURLに変わってしまったよ」とお知らせし、別のURLへ自動的に遷移(リダイレクト)させます。PHP や .htaccess などで設定することができます。

リニューアルでページのURLが変わってしまった場合や、別のドメインに移転した際によく使います。「このページは移転しました。3秒後に云々」というページを作らなくても、自動的に新しいURLに遷移してくれます。

WordPress の mod_rewite のリダイレクトで返されるステータスコードは?

WordPress でパーマリンク設定をすると .htaccess にこんな行が現れます。

RewriteRule . /wordpress/index.php [L]

おや、R(Redirect)のコードを指定していませんね。省略されているようですが、ステータスコードは何を返しているのでしょう?

Chrome のデベロッパーツールで確認したら、こんなのが返されました。

Request URL: http://mekemoke.jp/?p=804
Request Method: GET
Status Code: 301 Moved Permanently

ステータスコードは 301 を返していることがわかりました。デフォルトでは 302 を返すらしいので、サーバによって違うのかも知れませんね。

rel=”canonical” って何?

HTML の HEAD タグ内で、下記のように使用します。

<link rel=”canonical” href=”http://example.com/list.php” />

WordPress の吐き出すヘッダーで見かけたことがある方も多いのではないでしょうか。

そもそも rel ってどういう意味?

リンクの関係を示す link タグの rel は relation の略(他に rev というのがあってこれは reverse relation の略)で、リンク元(タグのあるページ)から見たリンク先( href 属性の値)の関係性を表します。

なら canonical ってどういう意味?

canonical (カノニカル) は 「基準」や「正統」などを表す「canon」に「~的な」「~の性質の」という意味の「-ical」が組み合わさったことで「基準の」「正統な」という意味を持ちます。Google と Microsoft が作った独自の値です。

つまり先程の例は「このページの基準となる URL はこのURLですよ」という情報を検索ロボット(クローラー)に与えるわけですね。

ページの移転は 301 リダイレクトで、ページの重複は canonical で対応しよう

WordPress などで動的にページを作成していたり、ショッピングカートなどのシステムが入っていると、同じ内容を表しているのに URL が違う、ということが起こりえます。

  1. http://www.example.com/xmas/sweets/cakes.html
  2. http://www.example.com/?category=xmas&type=sweets&p=2
  3. http://example.com/shop/?id=123&category=456&type=7

上記はすべて同じクリスマスケーキの紹介を表示しているとすると、重複するページが3つ存在することになりますね。

本当は 1. の URL で見せたいけれど、システムが自動で別の URL をどうしても出してしまう、という時には canonical を設定すると簡単です。パラメータさえ渡すことが出来れば、リダイレクトでも良いのですが。

同じ内容が見えるなら、ほっといてもいいんじゃないの?

毎回URLを気にしている閲覧者は多くないと思いますので、チラシに掲載する場合やURLを綺麗に見せたい場合以外は、確かにあまり問題ないように見えますね。

ですが、SEO的には重複したコンテンツをあまり良しとしません。
ページランクも分散されてしまうので、「色々URLができちゃってるけど、みんなここの内容と同じだよ!」という情報をクローラーに知らせたほうが良いでしょう。ただその分、2や3のようなページのページランクは少し下がります。

301 リダイレクトの落とし穴

どちらかと言うと 301 リダイレクトのほうを推奨していますが、1つの固有のURLにリダイレクトさせてしまうと、システムにパラメータを送れずに正常に動作しなくなる可能性があります。リダイレクトする場合はパラメータもちゃんと送るようにしましょう。

canocical の落とし穴

重複コンテンツの基準となる URL を設定するものですが、安易に「じゃあトップページにまとめよう」なんてすると、トップページ以外の検索インデックスがすべて消失してしまうこともあるようです。

また、基準となるページはちゃんと整理しておきましょう。A のページは B に、B のページは A に、などとぐるぐる循環させてしまうと、クローラーを混乱させてしまい、どちらもインデックスされません。

簡単に比較してみた

301 リダイレクト canonical 設定
元のページの検索インデックス 消える 大抵は残る
ページの自動遷移 自動で遷移する 自動で遷移しない
リニューアルでURLが変わった時 超おすすめ 代替手段として
システムによるURLの正規化 注意が必要 超おすすめ

参考サイト

上記のソースや情報は下記のページで詳しく解説されています。

rel=“canonical”タグと301リダイレクトの違いは? どちらを使うべきか? | 海外SEO情報ブログ
Googleが認めた、「301リダイレクトでPageRankが失われる」 | 海外SEO情報ブログ

rel=”canonical” 属性について – ウェブマスター ツール ヘルプ
正規化 – ウェブマスター ツール ヘルプ


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA