私のサーバーは訪問者をうまく処理しますが、最近、多くの検索エンジンボットが私のサイトをクロールしており、サーバーがこれらのボットの処理に非常に忙しくなっていることに気付きました。
私のサイトは毎日1000を超える投稿を生成しているため、ボットがサイトを頻繁にクロールするのは正常なことです。
ただし、ボットがサイトをクロールする頻度を減らすことはできますか?または、ボットに新しい投稿をクロールするように指示しますか?彼らは私のサイトをより頻繁にクロールしており、私のサイトにアクセスするとサーバーが遅くなります。
また、他のすべての検索エンジンのrobots.txtでクロールの遅延を指定する必要があります(YandexとBaiduはクロールに非常に積極的です)。これを追加:
User-agent: *
Crawl-delay: 5
クロールの遅延は秒単位です。高くなりすぎないようにしてください-最大5〜10秒で、サーバーの負荷が大幅に軽減されます。 1日あたり1000個の新しいページがある場合、検索エンジンがそれらすべてを検索できるようにする必要があります。
ただし、Googleはrobots.txtのcrawl-delayディレクティブを無視するため、Google(および場合によってはBing)にとって最適な方法は引き続きWebマスターツールを使用することです。
Googleのこのヘルプドキュメント が私の問題を解決するはずだと思います。
クロール速度を変更します。
- ウェブマスターツールのホームページで、目的のサイトをクリックします。
- 歯車アイコンをクリックしてから、[サイトの設定]をクリックします。
- [クロール速度]セクションで、必要なオプションを選択します。
新しいクロールレートは90日間有効です。
クロール対象をロボットに伝えるための事実上の標準は、 robots.txt です。
投稿のURLをパターンに適合させて、新しい投稿のみを選択するrobots.txtを生成できるようにします。スクリプトを使用して自動的に生成できます。オンザフライ(CGIスクリプト)または1時間ごとに実行するバッチジョブ、またはその他の方法。