編集長ブログ―安田英久
ソフト404ページはウェブマスターとして微妙に恥ずかしい

ソフト404とは、システムの不備で出る「おかしな状態」

今日は、「ソフト404ページ」の話題を。検索エンジンを困らせるぐらいで実害はほとんどないのですが、ウェブマスターとしては少し恥ずかしい、そんなサイトの不具合の話題です。

あなたのサイトでは、「ソフト404」の状態になっていませんか? サイトがソフト404を出す状態になっていると、検索エンジンに嫌われて、正しくページをクロールしてもらえなくなってしまうかもしれませんよ。

ソフト404とは、システムの不備で出る「おかしな状態」

ソフト404とは、少しわかりづらいのですが、Webページの表示に関するおかしな状態を表す用語です。どんな状態を指すのかというと、

  • ブラウザで見ると「指定されたURLのページが見つかりません」といった、ページがないことを示す404(not found)が表示されている。
  • でも、検索エンジンのロボットからみると、「見つかりません」と書かれたページがそのURLで正しく表示されたことになっている(404の状態になっていない)。

というもの。つまり、指定されたURLではページが作られておらず、ブラウザの画面上にもその旨正しく表示されるのですが、検索エンジンのロボットからはページが存在すると判断されるおかしな状態ですね。

原因はブラウザには表示されない「HTTPレスポンスコード」

もう少し詳しく説明しましょう。Webサーバーは、ブラウザやロボットからページの情報を求められると、2種類のデータを返します。

  • 1つはHTML、つまりブラウザに表示される部分。
  • もう1つは、「HTTPヘッダー」と呼ばれる、ブラウザには表示されない部分。

HTTPヘッダーは、ブラウザやロボットがサーバーから情報を得るためのやりとりに関する情報が含まれるのですが、そこに「HTTPレスポンスコード」というものがあります。これは、要求されたページのURLに対して、サーバーが「あったよ」「なかったよ」「こっちを見てね」と伝える部分。

通常、ページがちゃんと表示されたときはHTTPレスポンスコードで「200(OK)」を返し、要求されたページが存在しなければHTTPレスポンスコードで「404(見つかりません)」を返します。

「ソフト404」とは、本来はHTTPレスポンスコードで404を返さなければいけないのに、サーバーが200を返している状態を指します。そうしたHTTPの仕組みを厳密に処理できていないECシステムやコンテンツ管理システムやCGIのせいで発生する現象です。

たとえるならば、自動販売機にお金を入れたら、ディスプレイに「品切れです」って表示されるけど、商品選択ボタンは光っていて押せる状態になっていて、でも押しても何も出ないみたいな、そんな「画面の状態表示と、システム的な状態と、実際の状態がちぐはぐ」な状態です。

ソフト404は実はあまり大きな問題にはならない

とはいえ、ソフト404の状態になっていても、HTMLでは「見つかりませんでした」などの説明が表示されるので、ふつうにページを見る人間のユーザーには何の影響もありません。

ソフト404で困るのは、検索エンジン。検索エンジンはネット上の大量のURLの情報をクロールして集めていますが、404の(存在しない)ページの情報は検索対象として取り扱いません。そうしないと、処理が大変ですし検索結果にもゴミが増えますからね。その際に、各URLを検索対象として扱うかどうかを判断するのが、HTTPレスポンスコードなのです。つまり、レスポンスコードが200ならば検索対象として取り扱って、レスポンスコードが404ならば処理対象として扱わないといった感じです。

そこでソフト404です。本来は処理対象に含めなくていいはずの「見つかりません」ページがレスポンスコード200を返していると、検索エンジンは「見つかりません」という内容のページをクロールしてインデックスします。すると結果として、検索結果ページに「そのページは存在しません」「その商品は存在しません」といったページが出たり、場合によっては他の(ちゃんとクロールされるべき)ページがクロールされにくくなったり、新しいページがインデックスされるのが遅くなったりしてしまうのです。

まぁ、困ったことだと言えば困ったことですが、大問題かというとそうでもないですよね。どちらかというと、「ブラウザでページはちゃんと表示されるけど、ちょっとHTMLの文法が間違っていてIEでは変な表示になる」といった状態と似ているかもしれませんね。「ダメとまでは言わないけど、ちょっと恥ずかしい」ぐらい。

ソフト404の調べ方と対策

さて、では自分のサイトがソフト404になっていないか、どうすれば調べられるのでしょうか?

そのためには、通常は表示されないHTTPヘッダーのレスポンスコードを表示する必要があります。Firefoxを使っている人ならばアドオンのLive HTTP Headersを使えばいいのですが、それも面倒なので、HTTP Web-Snifferのサイトを使うことにしましょう。

使い方は簡単。「HTTP(S)-URL」の欄に、自分のサイトの存在しないはずのURLを入力します。たとえば、Web担ならこんな感じですね。

存在しない→http://web-tan.forum.impressrd.jp/sonzai-sinai-pe-ji

で、[Submit]ボタンをクリックします。ページ下に「HTTP Response Header」が表示されるので、その1行目の「Status」を見ます。

そこに「404」と表示されていれば問題ありません(ソフト404になっていません)。そこが「200」や「301」「302」だとソフト404を疑いましょう。

ページが存在しないはずのURLを調べると「404」が返っているので、「ソフト404」状態にはなっていない
ページが存在しないはずのURLを調べると「200」が返っている(コードが正しく404になっていない)ので、「ソフト404」状態

ソフト404は、サイトの一部で発生している場合もあります。たとえば楽天市場では、通常のページで存在しないURLを指定すると正しく404が返りますが、

http://web-sniffer.net/?url=http://www.rakuten.co.jp/sonzai-sinai-pe-ji

各店舗の商品ページでは、存在しない商品ページのURLを指定すると200が返っているので、ソフト404の状態になっています。

http://web-sniffer.net/?url=http://item.rakuten.co.jp/namasabazushi/sonzai-sinai-pe-ji/

京都府のページでは、存在しないはずのURLでは302が返ってきて、

http://web-sniffer.net/?url=http://www.pref.kyoto.jp/sonzai-sinai-pe-ji/

リダイレクト先のページでは200が返っています。

http://web-sniffer.net/?url=http://www.pref.kyoto.jp/error404.html

これもソフト404ですね。

Googleウェブマスターツールにサイトを登録していると、ソフト404になっているページがあれば教えてくれます。確認するには、ウェブマスターツールにログインして対象サイトを選んだら左のメニューから[診断]>[クロール エラー]を選びます。右側の「URLを表示」のところに「HTTP」や「見つかりませんでした」「タイムアウトしました」などに並んで「ソフト404」が表示されていれば、それです。

ソフト404になっていた場合には、解決するにはシステムを改修してもらうしかありません(楽天の店舗システムは……仕方ないですね)。

もしかしたらエンジニアさんは「404を返すようにすると、素っ気ないエラーページしか出せなくなりますよ」などと言うかもしれませんが、それは大間違いです。たとえばトヨタ自動車のサイトでは、存在しないページに対して、「そのページがないことを、トヨタのロゴやサイトデザインで示したうえで、しばらく待つとトップページに飛ばす」といった動きを、ちゃんと404を返したうえで実現しています。

◇◇◇

ちなみに、HTTPレスポンスコードの扱いを失敗すると、逆の「ソフト200」の状態も出てきます。ページのコンテンツがあってブラウザではちゃんと中身が表示されるのに、システムが間違ってレスポンスコード404を返してしまっているので、検索エンジンがそのページをインデックスしてくれないという状態です。

ウェブとか検索エンジン対策って、奥が深いですね。

・ウェブマスターツールヘルプ「ソフト404エラー」
http://www.google.com/support/webmasters/bin/answer.py?hl=ja&answer=181708

tweet123このエントリーをはてなブックマークに追加
日本赤十字社 東日本大震災 義援金募集
Web担メルマガでラクラク情報ライフを
注目記事が毎週手もとに届いて見逃さない
要チェックのセミナー情報もゲットできる
編集長コラムを一足先に読める
―― 10万人が読んでいる、Web担必読メルマガです

今日の用語

XMLサイトマップ
検索エンジンに対して、サイト内にあるページをリストアップして伝えるファイル。XM ... →用語集へ

連載/特集コーナーから探す

インフォメーション

Web担のメルマガを購読しませんか?
Web担の記事がコンパクトに毎週届くメールマガジン「Web担ウィークリー」は、10万人が読んでいる人気メルマガ。忙しいあなたの情報収集力をアップさせる強い味方で、お得な情報もいち早く入手できます。

Web担に広告を掲載しませんか?
購読者数10万人のメールマガジン広告をはじめとする広告サービスで、御社の認知向上やセミナー集客を強力にお手伝いいたします。

サイトマップ
RSSフィード


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

GOLD SPONSOR
さくらインターネット株式会社株式会社KDDI ウェブコミュニケーションズ株式会社日本レジストリサービスHP Softwareトランスコスモス株式会社株式会社ハイパーボックスDomain Keeperアドビ システムズ 株式会社
SPONSOR
株式会社キノトロープ株式会社アイレップ株式会社ニューズ・ツー・ユーシックス・アパート株式会社ウェブアンテナ株式会社サイバーエージェント富士通株式会社SitecoreYahoo!プロモーション広告Oracle