ウェブマスター向け公式ブログ
Google フレンドリーなサイト制作・運営に関するウェブマスター向け公式情報
URL 末尾のスラッシュは必要?
2010年11月5日金曜日
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 で同じコンテンツが表示される場合について考えてみましょう。
http://<ドメイン>/<ディレクトリ>/
(末尾にスラッシュあり)
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://<ドメイン>/<ディレクトリ>
優先 URL としてどちらか一方の URL を選択する。
サイトがディレクトリ構造の場合は、URL の末尾にスラッシュを付けるのが慣例となっていますが(例: example.com/directory ではなく example.com/directory/)、どちらを選択するかは自由です。
優先 URL として選択した形式を一貫して使用する。
リンクや
サイトマップ
には、重複 URL ではなく、優先 URL を使用します。
301 リダイレクトを利用して、重複 URL から優先 URL にリダイレクトする。
リダイレクトの設定ができない場合は、
rel="canonical" 属性
の利用を強くおすすめします。この属性を指定することで、Google やその他の検索エンジンに対して、2 つの URL に分散していたリンクの効果をまとめるなど、301 リダイレクトと同様の効力を発揮することができます。この点についての詳細は、
SEO レポートカード
の「調査分野Ⅱ URL とリダイレクト」をご覧ください。
ウェブマスター ツール
の
Fetch as Googlebot
機能を利用して、301 リダイレクトの設定を確認する。
たとえば、下記のような URL のペアが期待通りのステータス コードを返すか確かめてみましょう。
http://example.com/foo/
http://example.com/foo
具体的には、優先 URL が 200 を返すのに対して、重複 URL が 301 を返して優先 URL にリダイレクトするかどうか確認します。また、モバイル サイトの場合は、
Fetch as Googlebot-Mobile
機能を利用すると同様に確認することができます。
クロール エラー
がないかウェブマスター ツールでチェックする。
可能であれば、ウェブ サーバーのログも念のためチェックして、301 リダイレクトをしているか確認しましょう。
以上の手順を踏むことで、サイトがより最適化され、サーバー運用が効率的になります。
Written by Maile Ohye, Developer Programs Tech Lead
Original version:
To slash or not to slash
ラベル
+1 ボタン
2
AMP
11
API
3
App Indexing
8
CAPTCHA
1
Chrome
2
First Click Free
1
Google アシスタント
1
Google ニュース
1
Google プレイス
2
Javascript
1
Lighthouse
4
Merchant Center
8
NoHacked
4
PageSpeed Insights
1
reCAPTCHA v3
1
Search Console
101
speed
1
イベント
25
ウェブマスターガイドライン
57
ウェブマスタークイズ
2
ウェブマスターツール
83
ウェブマスターフォーラム
10
オートコンプリート
1
お知らせ
69
クロールとインデックス
75
サイトクリニック
4
サイトマップ
15
しごと検索
1
スマートフォン
11
セーフブラウジング
5
セキュリティ
18
ダイナミック レンダリング
1
データー ハイライター
2
ハッキング
19
ハングアウト
2
ビデオチュートリアル
7
フィードバックとコミュニケーション
1
プロダクトエキスパート
1
マルウェア
9
モバイル
2
モバイルサイト
54
リッチカード
2
リッチスニペット
12
リッチリザルト
4
画像
3
画像検索
2
検索エンジン最適化
13
検索結果
85
構造化データ
25
国際化
4
再審査リクエスト
9
初級者向け
160
上級者向け
203
中級者向け
206
動画
1
アーカイブ
2020
11
9
8
7
6
5
4
3
2
1
2019
11
10
9
8
6
5
4
3
2
1
2018
12
11
10
7
6
5
4
3
2
1
2017
12
11
10
9
8
7
6
4
3
2
1
2016
12
11
9
8
7
6
5
4
3
2
1
2015
12
11
10
9
8
7
5
4
3
2
1
2014
12
11
10
9
8
7
6
5
4
3
2
1
2013
12
11
10
9
8
7
6
5
4
3
2
1
2012
12
11
10
9
8
7
6
5
4
3
2
1
2011
12
11
10
9
8
7
6
5
4
3
2
1
2010
12
11
10
9
8
7
6
5
4
3
2
1
2009
12
11
10
8
7
6
4
3
2
1
2008
12
Feed
Follow @googlewmc