WEBサービス創造記

WEBサービスを作ったり保守したりしてる人のメモブログです。

URLの末尾についてるスラッシュの有無がSEOやサーバの負荷にどう影響するか

   

URLの末尾についている/(スラッシュ)について

URLの末尾についてる/(スラッシュ)を「トレイリングスラッシュ」と言います。

トレイリングスラッシュ有り http://linuxserver.jp/category/linux/
トレイリングスラッシュ無し http://linuxserver.jp/category/linux

ウェブ制作をしているとこのトレイリングスラッシュは必要なのか疑問に思うこともあると思います。

この記事ではURLにこのトレイリングスラッシュがある場合とない場合とでSEOにどのような影響があるのか、サーバの負荷に関係するのかなどを解説していきます。

トレイリングスラッシュの差異で全く同じページが表示される場合

このケースでの懸念は、2つのURLで同一のページにアクセスできてしまうことで、検索エンジンからコンテンツの重複として判定されたり、被リンクの効果が分散しないかということです。
そこで、そもそもこのトレイリングスラッシュの有無という微妙な違いで、それぞれが別のページとして判定されるのかどうかということを考察していきます。

URLでのスラッシュの役割

URLでのスラッシュの役割は、ディレクトリを表します。
例えば、先ほどの表の”http://linuxserver.jp/category/linux/”では、Webサーバのドキュメントルートから相対的に見て”category/linux”というパスにあるディレクトリを意味しています。
トレイリングスラッシュなしのURLの場合は”category”というディレクトリの中にある”linux”というファイルを指定するという意味になります。

ディレクトリを指定してアクセスした場合は、サーバで予め設定したファイル名(index.html,index.htm,index.phpなど)がデフォルトのファイルとして返されます。

このように、トレイリングスラッシュの有無だけでもディレクトリかファイルかどうかという明確な区別がされるため、それぞれが別のページとして判定され、それぞれのページが同じコンテンツを表示している場合は、コンテンツの重複とみなされます

この問題への対策としては下記が考えられます。

URLのトレイリングスラッシュの有無を統一する

URLのトレイリングスラッシュの有無を統一する

例えば、”http://linuxserver.jp/category/linux”にアクセスされたら、トレイリングスラッシュ有りの”http://linuxserver.jp/category/linux/”にリダイレクトするという対策です。
.htaccessを以下のように編集することで、トレイリングスラッシュ有りに統一することができます。

# add Trailing Slash
RewriteRule ^(.+[^/])$ /$1/ [R=301,L]

レンタルサーバなどではデフォルトでこのような設定になっている場合が多いです。
もし自分で設定するのがめんどくさい場合は、特に対策をしないでGoogleの判定に任せるという選択肢もあります。

特に設定を変更しない。

最適な選択とは言えませんが、特に問題はありません。というのも、多くのサイトが重複するコンテンツを保有しているため、Google ではサイトをインデックスする際、ウェブマスターとユーザーに配慮してこのようなケースにもおおむね対応しているからです。

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

トレイリングスラッシュの差異で全く別のページが表示される場合

前述したように技術的にはそれぞれが別のページとして判定されるため、そのコンテンツも異なれば問題はありません。
ただ、”http://linuxserver.jp/category/linux”と”http://linuxserver.jp/category/linux/”のように非常に似たURLで、まったく別のコンテンツが表示されることはユーザビリティの観点から良くないので避けたほうがいいようです。
Googleの公式ブログでもそう記載してあります。

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

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

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

トレイリングスラッシュが有る場合と無い場合でどちらか一方のページしかレスポンスが返ってこない

例えば、”http://linuxserver.jp/category/linux/”ではアクセスできるが、”http://linuxserver.jp/category/linux”では404が返ってくるケースです。

この場合は、下記のGoogle公式ブログからの引用にある通り特に対策は不要です。

もし、両方の URL を入力しても、どちらか一方の URL しか返ってこない場合は、もう一方の URL がこの URL にリダイレクトされているので、その設定のままで問題ありません。

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

以上、トレイリングスラッシュによる影響についての解説でした。
細かいトピックでは有りますが、疑問が解消できてスッキリしました。

参考資料

 - SEO , , , ,