SEOコンサルタントの運営するSEO最新情報・SEOのサイトです。SEO最新情報、SEO業者の紹介など。運営者はSEOコンサルタント・白石竜次(「世界一わかりやすいSEO対策 最初に読む本(技術評論社)」他)です。お気軽にお問合せください。

SEOコンサルタント.com

長期間robots.txtが503を返し続けるたらどうなる?

投稿日:

長期間にわたってrobots.txtが503を返し続けるたらどうなる?

グーグル検索のトップが交代、新トップは収益増加よりもUX改善を優先?【SEO情報まとめ】[Web担当者Forum]

「長期間、たとえば2か月にわたってrobots.txtが503を返しているけれど、サイト内にあるrobots.txt以外のコンテンツページには正常にアクセスできる状態のサイトがあるとします。
そのサイトは検索結果から削除されるのでしょうか? それとも問題なくクロールされるのでしょうか?」

こんな質問を受けたグーグルのゲイリー・イリース氏は、次のように返信した:

「見落としがちなポイントの1つとして、「robots.txtにアクセスできないときに、クローラーがサイトの重要なページに一貫してアクセスできるかどうか」がある。
・重要なページにはアクセスできるのであれば、サイトは大丈夫かもしれない。不安定な状態ではあるが、まだアクセスは提供されている。
・重要なページにもエラーが発生する場合、運が悪かったということだ。
robots.txtのHTTPエラーが発生した場合は、できるだけ早くアクセスできるようにする必要がある。」

イリース氏によると、robots.txtが503を返していてアクセスできない状態であっても、重要なページにGooglebotがアクセスできれば大きな問題にはならないということらしい。

ただし、これを正しく理解するには、robots.txtに対するGooglebotの挙動を知っておく必要がある。

robots.txtを取得しようとして503エラーだった場合のGooglebotの動きに関して、技術ドキュメントには、次のような記載がある(編集部で強調・改行・補足を追加):

「robots.txt リクエストに対してサーバーから明確な応答がないため、Google は一時的な 5xx および 429 のサーバーエラーと解釈し、サイトが完全に許可されていない場合と同様に処理します※。
Google は、サーバーエラー以外の HTTP ステータス コードを取得するまで robots.txt ファイルのクロールを試行します。503 (service unavailable) エラーの場合、再試行が頻繁に行われます。
robots.txt に 30 日以上アクセスできない場合、Google は robots.txt の最後のキャッシュ コピーを使用します。
使用できない場合、Google はクロールに対する制限はないと見なします。」

※Web担編注 ドキュメントの日本語訳が適切ではない。正しくは次のような意味か:

「5xxや429のサーバーエラーが返る場合、robots.txtの情報を正しく取得できないため、Googleはサイト全体がdisallow指定されていると一時的に解釈します」

つまり、次のrobots.txt指示のようにサイト全体のクロールが禁止されているとみなすことを意味している:

User-agent: Googlebot
Disallow: /

503を含む500番台のエラーをrobots.txtが返す場合のGooglebotの処理を簡潔にまとめると、次のとおりだ:

1.サイト全体のクロールを禁止されているとみなしたうえで、robots.txt取得の再試行を繰り返す(30日間)

2.30日以上取得できない場合は、以前にクロール成功してキャッシュしていたrobots.txtに従う:

・robots.txtのキャッシュがグーグル側にある場合は、その内容に従う
・robots.txtのキャッシュがグーグル側にない場合は、制限なくクロールする(robots.txtが存在しない場合のデフォルトの挙動)
質問者が仮定した状況は「2か月にわたってrobots.txtが503を返している」なので、2に該当する。つまり、キャッシュのrobots.txtがあればそれに従い、なければ無制限にクロールする。

もっともイリース氏が言うように、次の2点は重要だ:

・robots.txtだけでなく他のページでもエラーがあれば、当然クロールしてもらえない。

・robots.txtにエラーでアクセスできない状況は(4xx除く)、速やかに解決するべき。

  • B!