AJAX +キャッシングの組み合わせに基づいてロード時間を短縮する手法を使用するWebサイトがあります。基本的に、コンテンツの取得に時間がかかるセクションがページにある場合、まずキャッシュされているかどうかを確認します。そうである場合、コンテンツを提供します。そうでない場合は、プレースホルダーを提供し、クライアントでAJAX呼び出しを行ってコンテンツを取得し、その後のリクエストのためにキャッシュします。
その結果、最初のリクエストでページコンテンツ全体を取得する場合もあれば、AJAXリクエストの応答ですぐに満たされるプレースホルダーを取得する場合もあります。
このページの右側の列のカテゴリごとの結果カウントで例を見ることができます:
http://www.inzoco.com/crits/2-1-3-28-185-0-28079-0-0/listado-piso-en-alquiler-en-madrid-madrid.aspx
コンテンツがキャッシュされていないページをリクエストしてから同じページを再度要求すると、プレースホルダーで最初に別の応答が返されるため、検索エンジンによってクローキングとみなされる可能性があるのではないかと心配していますAJAXリクエストと、すべてのコンテンツがレンダリングされた2番目のリクエスト。
クローキングとは、検索結果を操作するために、意図的に異なるコンテンツを検索エンジンに提供し、その後ユーザーに提供することです。ここではそうではありません。
ページが最初にアクセスされた後にキャッシュが作成および保存された場合、異なるコンテンツが表示される検索エンジンは1回だけ発生します。その場合でも、検索エンジンがページを最初に表示する場合にのみ発生します。そのため、このシナリオはページの一部でのみ発生し、それらのページでも1回だけ発生します。それは本当に問題ではありません。
ただし、これを完全に回避したい場合は、サイトのトラフィックが最も低いときに(おそらく午前3時頃に一晩)実行するcronジョブを作成して、まだキャッシュが生成されていない新しいページのコンテンツをキャッシュすることを検討してください。初期ページビュー。
代替オプション、または上記の提案に加えて実装したいオプションは、完全なコンテンツへのリンクを作成し、JavaScript/Ajaxを使用してページ上のコンテンツをダウンロードするときにそれらを削除することです。これにより、検索エンジンは常に完全なコンテンツにアクセスできます。これはプログレッシブエンハンスメントと呼ばれ、JavaScriptを使用していないユーザーもそのコンテンツにアクセスできるため推奨されます。