URL 末尾のスラッシュは必要? | Google ウェブマスター向け公式ブログ

このページは、外部サイト Google ウェブマスター向け公式ブログ の情報をRSSフィード経由で取得して表示しているため、記事の一部分しか表示されていなかったり、画像などが正しく表示されなかったり、オリジナル記事が意図したデザインと異なっていたりする場合があります。
完全な状態のオリジナル記事は 「URL 末尾のスラッシュは必要?」 からご覧ください。
URL 末尾のスラッシュ(「/」)は必要なのでしょうか?今回は、よく聞かれるこの質問について、取り上げたいと思います。

一般的には、下記のように、URL の末尾にスラッシュが付いている場合はディレクトリを示し、スラッシュが付いていない場合はファイルを示す、という使い分けがされてきました。

http://example.com/foo/ (末尾にスラッシュがあるので、通常はディレクトリを示す)
http://example.com/foo (末尾にスラッシュがないので、通常はファイルを示す)

ただし、これはあくまで慣例に過ぎません。Google では、ファイルかディレクトリか、または URL 末尾にスラッシュがあるかどうかに関わらず、上記の URL はそれぞれ別物として(そして、同等に)扱われます。


スラッシュの有無でコンテンツが異なる場合について(ユーザーには不便?)

検索エンジンにとっては、この 2 種類の URL がそれぞれ異なるコンテンツを保有していたとしても、技術的には問題ありません。しかし、ユーザーにとっては、非常に分かりにくいと言えます。たとえば、www.google.co.jp/webmasters と www.google.co.jp/webmasters/ でまったく違うコンテンツが表示される場合を想像してみてください。

このような理由から、末尾にスラッシュがある URL とない URL で、同じコンテンツを表示することが多いのです。典型的には、次のようなディレクトリ構成になっているサイトによく見られます。

http://example.com/parent-directory/child-directory/


スラッシュの有無に関わらずコンテンツが同じ場合について

では、下記のような 2 種類の URL で同じコンテンツが表示される場合について考えてみましょう。
  1. http://<ドメイン>/<ディレクトリ>/
    (末尾にスラッシュあり)
  2. http://<ドメイン>/<ディレクトリ>
    (末尾にスラッシュなし)
この場合は、両方ともが ステータス コード 200 を返すのではなく、片方がもう一方に リダイレクト するという設定にするのが望ましいと言えます。というのも、このように設定することで、重複するコンテンツの問題 を避けることができるからです。ブラウザのアドレス バーに URL を直接入力することで、この設定の簡単なチェックが可能です。

もし、両方の URL を入力しても、どちらか一方の URL しか返ってこない場合は、もう一方の URL がこの URL にリダイレクトされているので、その設定のままで問題ありません。ちなみに、末尾にスラッシュが付いている URL にリダイレクトされる場合、Google の検索結果には通常、そのリダイレクトが 301 か 302 かに関係なく、200 を返す方の URL (一般的には末尾にスラッシュがある方の URL )が表示されます。

一方で、スラッシュの有無に関わらず、どちらの URL もレスポンス コードとして 200 を返す場合には、どうすればよいでしょうか?
  • 重複するコンテンツを減らし、クロールの効率性 (英語)を上げるために設定を変更する(詳細は下記を参照)。
  • 特に設定を変更しない。
    最適な選択とは言えませんが、特に問題はありません。というのも、多くのサイトが重複するコンテンツを保有しているため、Google ではサイトをインデックスする際、ウェブマスターとユーザーに配慮してこのようなケースにもおおむね対応しているからです。
    ※ ちなみに、ルート URL については、http://example.com のように末尾にスラッシュがなくても、http://example.com/ とまったく同一に扱われ、決してリダイレクトされることがないようになっています。

URL の形式を統一する手順

下記の 2 種類の URL がどちらもレスポンス コードとして 200 を返し、そのコンテンツが重複している場合は、以下の手順に従って URL の形式を 1 つに統一することができます。

http://<ドメイン>/<ディレクトリ>/
http://<ドメイン>/<ディレクトリ>
  1. 優先 URL としてどちらか一方の URL を選択する。
    サイトがディレクトリ構造の場合は、URL の末尾にスラッシュを付けるのが慣例となっていますが(例: example.com/directory ではなく example.com/directory/)、どちらを選択するかは自由です。

  2. 優先 URL として選択した形式を一貫して使用する。
    リンクや サイトマップ には、重複 URL ではなく、優先 URL を使用します。

  3. 301 リダイレクトを利用して、重複 URL から優先 URL にリダイレクトする。
    リダイレクトの設定ができない場合は、rel="canonical" 属性 の利用を強くおすすめします。この属性を指定することで、Google やその他の検索エンジンに対して、2 つの URL に分散していたリンクの効果をまとめるなど、301 リダイレクトと同様の効力を発揮することができます。この点についての詳細は、SEO レポートカード の「調査分野Ⅱ URL とリダイレクト」をご覧ください。

  4. ウェブマスター ツールFetch as Googlebot 機能を利用して、301 リダイレクトの設定を確認する。
    たとえば、下記のような URL のペアが期待通りのステータス コードを返すか確かめてみましょう。

    http://example.com/foo/
    http://example.com/foo

    具体的には、優先 URL が 200 を返すのに対して、重複 URL が 301 を返して優先 URL にリダイレクトするかどうか確認します。また、モバイル サイトの場合は、Fetch as Googlebot-Mobile 機能を利用すると同様に確認することができます。

  5. クロール エラー がないかウェブマスター ツールでチェックする。
    可能であれば、ウェブ サーバーのログも念のためチェックして、301 リダイレクトをしているか確認しましょう。
以上の手順を踏むことで、サイトがより最適化され、サーバー運用が効率的になります。

Written by Maile Ohye, Developer Programs Tech Lead
Original version: To slash or not to slash
メルマガの登録はこちら Web担当者に役立つ情報をサクッとゲット!

今日の用語

ビッグデータ
ビッグデータとは英語でBig Dataと書き、従来の典型的なデータベースでは処理 ...→用語集へ

インフォメーション

RSSフィード


Web担を応援して支えてくださっている企業さま [各サービス/製品の紹介はこちらから]