web-dev-qa-db-ja.com

Googleボットによるリクエストで使用されるヘッダーは何ですか?

Googleボットによるリクエストで使用されるヘッダーは何ですか?ユーザーエージェントである必要がありますが、他に何がありますか?キャッシュ制御ヘッダーに興味があります。ボットは新しいページを取得しようとしますが、キャッシュからは取得しませんか?

関連する質問: サーバー側のキャッシュをフラッシュできるように、ブラウザーはページの再読み込み時に異なるHTTPヘッダーを送信しますか?

私はサーバーキャッシュを使用していますが、更新するオプションがあります Ctrl+F5、しかしボットにページを更新させたくない。検出するものをコーディングする Ctrl+F5 未満:

function cacheHitDisplay($params)
  if ($_SERVER['HTTP_CACHE_CONTROL'] == 'no-cache') {
    // process/refresh page. ctrl-f5 pressed
    return 0;
  }
  getFromCache($params);
  exit 0
}
cacheHitDisplay(); // will show cached page and exit script
...here normal page processing, saving page to cache at end...
3
LeonidMew
if ($_SERVER['HTTP_CACHE_CONTROL'] == 'no-cache') {

また、Cache-Control HTTPリクエストヘッダー(ほとんどのリクエストヘッダーと同様)は完全にオプションであるため、リクエストの一部としてまったく存在しない場合があります。 (この行は、これらの条件下でE_NOTICEを生成します。)

実際、GooglebotがCache-Controlヘッダー(通常のWebサイトのクロールを実行する場合)(GSCでのフェッチとレンダリングとは対照的)。これは私自身のログから、そして オンラインで報告されたものから です。したがって、「ボットにページを更新させたくない」場合は、サーバー側のキャッシュを更新するために「キャッシュなし」を具体的に確認するのが正しいようです。

Googlebotから通常表示されるHTTPリクエストヘッダーは非常に最小限です。

Host: www.example.com
Connection: keep-alive
Accept: text/plain,text/html,*/*
User-Agent: Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
Accept-Encoding: gzip,deflate,br
2
MrWhite