Googlebot
Googlebot とは、Google のウェブ クローラーの総称です。これには次の 2 種類があります。
- スマートフォン用 Googlebot: モバイル デバイスでユーザーをシミュレートするモバイル クローラー。
- パソコン用 Googlebot: デスクトップでユーザーをシミュレートするデスクトップ クローラー。
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 がページをクロールできないようブロックする場合は robots.txt ファイルを使用してください。
- Google がページをインデックス登録するのを望まない場合は
noindex
を使用してください。 - クローラーとユーザーによるページへのアクセスを完全にブロックする場合は パスワード保護などの他の方法を使用してください。
Googlebot が本物であるか確認する
Googlebot をブロックする前に、他のクローラーが Googlebot の HTTP user-agent
リクエスト ヘッダーを使用して Googlebot になりすましていることがよくある点に注意してください。問題のリクエストが本当に Google からのものかどうかを確認することが重要です。リクエストが実際に Googlebot から送信されたものかどうかを確認するには、リクエストの送信元 IP についてリバース DNS ルックアップを実施するか、送信元 IP と Googlebot の IP 範囲を照合します。