2010 年 4 月 21 日(水曜日)
今回取り上げるのは、よく聞かれる質問です。従来、末尾にスラッシュが付いた URL はディレクトリを示し、末尾にスラッシュが付いていない URL はファイルを示していることが一般的でした。
https://example.com/foo/ (with trailing slash, conventionally a directory) https://example.com/foo (without trailing slash, conventionally a file)
しかし、そのようにする必要はありません。Google はファイルまたはディレクトリのいずれであるか、末尾にスラッシュが付いているか否かを問わず、前述の各 URL を個別に(かつ同等に)扱います。
Google にとっては、スラッシュが付いた URL とスラッシュが付いていない URL に異なるコンテンツを含めることは問題ありませんが、ほとんどの場合、ユーザーにとっては理想的ではありません。
検索エンジンに関する技術的な観点からは、これら 2 つの URL バージョンに異なるコンテンツを含めることは可能です。しかし、ユーザーにとっては、この構成は著しく混乱をもたらすものです。www.google.com/webmasters
と www.google.com/webmasters/
が 2 つの別々のエクスペリエンスを提供しているケースを想像してみてください。
このような理由から、末尾にスラッシュが付いている URL と付いていない URL で同じコンテンツを表示するのが一般的です。よくある例としては、次のようなディレクトリ構成になっているサイトが挙げられます。
https://example.com/parent-directory/child-directory/
サイトの構成とオプション
サイトで簡易チェックを行い、このパターンに一致する URL の一方がもう片方の URL にリダイレクトしているかどうかを確認できます。
-
https://example.com/foo/
(末尾にスラッシュあり) https://example.com/foo
(末尾にスラッシュなし)
-
1 つのバージョンのみが返される(つまり、もう 1 つのバージョンはそちらのバージョンにリダイレクトされる)場合は問題ありません。この動作は重複コンテンツを削減でき、有益です。末尾にスラッシュが付いている URL にリダイレクトされる場合、Google の検索結果には通常、リダイレクトが
301
か302
かにかかわらず、200
レスポンス コードを返すバージョンの URL(多くの場合は末尾にスラッシュが付いている URL)が表示されます。 - スラッシュ付き、スラッシュなしの両方の URL で同じコンテンツが表示され、それぞれの URL が
200
を返す場合は、次のような対応ができます。- この動作を変更して(詳しくは以下をご覧ください)、重複コンテンツの削減とクロール効率の向上を図ります。
- 現状を維持します。多くのサイトで重複コンテンツが存在しています。Google のインデックス登録プロセスでは通常、ウェブマスターとユーザーのためにこのようなケースにも対応しています。最適な動作ではありませんが、問題のあるものではまったくありません。
-
特にルート URL では、
https://example.com
はhttps://example.com/
と同等であり、Chuck Norris であってもリダイレクトできません。
1 つの URL のみを表示する手順
サイトでは、次の 2 つの URL で重複コンテンツが表示されているとします。
https://example.com/foo/ https://example.com/foo
つまり、両方の URL が 200
を返します(いずれもリダイレクトしない、または rel="canonical"
リンクタグが設定されていない)。このような状況を変える場合には次のことを実行します。
-
優先 URL としてどちらかの URL を選択します。ディレクトリ構造があるサイトの場合は、ディレクトリ URL の末尾にスラッシュを使用する(例:
example.com/directory
ではなくexample.com/directory/
)のが一般的ですが、どちらの URL でも選択できます。 - 優先 URL に一貫性を持たせます。内部リンクでは優先 URL を使用します。サイトマップがある場合は、優先 URL を含めます(重複 URL は含めません)。
-
301
リダイレクトを使用して、重複 URL から優先 URL にリダイレクトします。これができない場合は、rel="canonical"
リンクタグを使用することをおすすめします。rel="canonical"
は Google のインデックス登録において301
と同様に機能し、その他の主要な検索エンジンでも機能します。 -
ウェブマスター ツールの Fetch as Googlebot を使用して
301
構成をテストします。https://example.com/foo/
とhttps://example.com/foo
という URL が想定どおりに動作していることを確認します。優先 URL は200
ステータス コードを返します。重複 URL は優先 URL に301
リダイレクトされます。 -
ウェブマスター ツールでクロールエラーを確認します。可能であれば、
301
リダイレクトが実装されていることの簡単なチェックとしてウェブサーバーのログを確認します。 - メリットとして、サイトをさらに最適化できる知識を習得でき、効率的なサーバー構成が可能となります。