Googlebot

Googlebot とは、Google のウェブ クローラーの総称です。これには次の 2 種類があります。

Googlebot のサブタイプは、リクエストの HTTP user-agent リクエスト ヘッダーで確認できます。ただし、両方のクローラー タイプが robots.txt 内の同じプロダクト トークン(ユーザー エージェント トークン)に従うため、robots.txt でスマートフォン用 Googlebot またはパソコン用 Googlebot のどちらかをターゲットにすることはできません。

Google はほとんどのサイトについて、主としてコンテンツのモバイル バージョンをインデックスに登録します。そのため、Googlebot のクロール リクエストの大部分はモバイル クローラーを使用して行われ、一部がデスクトップ クローラーを使用して行われます。

Googlebot がサイトにアクセスする方法

Googlebot は、平均して数秒に 1 回を超える頻度でサイトにアクセスすることはありません。ただし、遅延などにより、短時間にアクセス頻度が若干増えたように思える場合があります。

Googlebot は、数千台のマシンで同時に実行することでパフォーマンスを向上させ、ウェブの拡大に伴って拡張できるように設計されています。また、帯域幅の使用量を削減するために、クロール対象のサイトの近くにあるマシンで多数のクローラーを実行します。そのため、複数の IP アドレスからのアクセス(ユーザー エージェントはすべて Googlebot)がログに記録される場合があります。サーバーに大きな負荷をかけることなく、1 回のアクセスでサイト内のページをできるだけ多くクロールすることを目標にしています。Google のクロール リクエストへの対応で問題が発生した場合は、クロール頻度を減らすことができます。

Googlebot は、主に米国の IP アドレスからクロールします。ただし、サイトが米国からのリクエストをブロックしていることを検出すると、他の国の IP アドレスからクロールを試みることがあります。現在 Googlebot で使用されている IP アドレス ブロックのリストは、JSON 形式で確認できます。

Googlebot は HTTP/1.1 を介してクロールしますが、HTTP/2 をサポートしているサイトに対しては HTTP/2 を介してクロールします。サイトのクロールに使用されたプロトコルのバージョンによって、ランキング上のメリットが生じることはありません。ただし、HTTP/2 を介してクロールされた場合、サイトと Googlebot のコンピューティング リソース(CPU、RAM など)が節約されます。
HTTP/2 を介してクロールされないようにするには、サイトをホストしているサーバーの設定を変更し、Googlebot が HTTP/2 を介してクロールしようとすると 421 の HTTP ステータス コードで応答するようにしてください。この対応ができない場合は、Googlebot チームにメッセージを送信できます(ただし、この解決策は一時的なものです)。

Googlebot は、HTML ファイルまたはサポートされているテキストベースのファイルの最初の 15 MB の部分をクロールできます。HTML で参照されるリソース(CSS、JavaScript など)は個別に取得され、取得ごとに同じファイルサイズの制限が適用されます。ファイルの最初の 15 MB を超えると、Googlebot はクロールを停止し、最初の 15 MB のみをインデックス登録の対象とします。ファイルサイズの上限は、非圧縮データに適用されます。Google の他のクローラー(動画用 Googlebot、画像用 Googlebot など)では、制限が異なる場合があります。

米国の IP アドレスからクロールする場合、Googlebot のタイムゾーンは太平洋時間です。

Googlebot のサイトアクセスをブロックする

サイトへのリンクを公開しないようにして、そのサイトの存在を隠すことはまず不可能です。誰かが「非公開」のサイトからリンクをたどって別のサイトにアクセスすると、「非公開」のサイトの URL がリファラータグに追加され、他のサイトのリファラーログに保存、公開されるからです。

Googlebot によるサイトのコンテンツのクロールをブロックするには、複数の方法があります。Googlebot によるページのクロールのブロック、Googlebot によるページのインデックス登録のブロック、クローラーとユーザーによるページアクセスの完全なブロックの違いにご注意ください。

Googlebot が本物であるか確認する

Googlebot をブロックする前に、他のクローラーが Googlebot の HTTP user-agent リクエスト ヘッダーを使用して Googlebot になりすましていることがよくある点に注意してください。問題のリクエストが本当に Google からのものかどうかを確認することが重要です。リクエストが実際に Googlebot から送信されたものかどうかを確認するには、リクエストの送信元 IP についてリバース DNS ルックアップを実施するか、送信元 IP と Googlebot の IP 範囲を照合します。