🚨

【Cache】Googleのキャッシュが救った“消えたはずの画像”

に公開

ブログ画像が消えたのにGoogle画像検索で出てくるのはなぜ?

大体こういう問題は cache が原因なのだ。

背景

  • 旧ブログのアカウントを削除したことで、サービスのサーバーにアップロードしていた元画像ファイルも消えてしまったのだ

  • そのため、移行先ブログから削除済み画像のURLを参照しても、画像は取得できなくなっていたのだ

  • ところが、Google画像検索ではまだその画像が見つかり、画質は落ちていたもののダウンロードできたのだ

TL;DR

Googleは、検索結果を高速で表示するために、一度取得したWebページのcacheを自身のserverに保存しているのだ。

そのため、元のsiteから画像が削除されても、Googleが次のcrawlingで情報を更新するまで、古いcache(画像のthumbnailを含む)が検索結果に残り続けるのだ。

解説

Googleのクロールとキャッシュ

Googleは、Googlebotと呼ばれる crawler programを使い、世界中のweb pageを常時巡回して情報を収集しているのだ。

その際、発見したページの内容(テキストや画像など)を、Google自身のサーバーにコピーして保存する。これを「cache」と呼ぶのだ。

これは、検索結果を高速に表示したり、元のサイトが一時的にダウンしていても内容を確認できるようにしたりするためなのだ。

画像検索のサムネイル

特にGoogle画像検索では、検索結果に一覧表示するための小さな画像、つまり「Thumbnail」が生成され、Googleのサーバーに保存されるのだ。

これらは表示速度を最適化するために、元の画像よりもデータサイズが小さく(画質が荒く)なっているのだ。

▼ 実際表示された画像検索の Thumbnail
Google Image Searchの結果まだ消されたリソースが Thumbnail で表示できている

すでに削除済みのリソースだが Thumbnail で画像は表示されている

元のサイト削除後のタイムラグ

ユーザーがZennのアカウントを削除すると、Zennのサーバーから記事も画像もきれいさっぱり消えてしまうのだ。

でも、Googleのクローラーがもう一度そのページを見に来て、「あれれ?この記事、もうないのだ!」と気づいて cache や Thumbnail を消すまでには、ちょっと時間がかかるのだ。

だから今回、ぼくはその“タイムラグ”の間にGoogle検索を使ったのだ。

そのおかげで、元の場所にはもう画像がないのに、Googleのサーバーに残っていた cache やThumbnailが表示されて、画質は荒かったけど画像を保存できたのだ!

参考:他のキャッシュ技術との比較

種類 主な役割 保存場所 対象範囲 管理者・制御方法
ブラウザキャッシュ ユーザーが再訪時にページ表示を高速化するため、静的リソースを保存 ユーザーの端末(メモリ・ディスク) 個々のユーザーごと ブラウザとHTTPキャッシュヘッダー Chromeのキャッシュ
CDNキャッシュ 世界中のユーザーに高速配信するため、コンテンツを分散保存 各地のCDNエッジサーバ 全ユーザーで共有 CDN事業者・キャッシュ制御ヘッダー Cloudflare, Akamaiなど
Googleキャッシュ 検索結果の高速表示や、消えたページ・画像の一時保存 Googleのデータセンター 全ユーザーで共有 Googleのクローラーとインデックス方針 検索結果のキャッシュリンク、画像サムネ
  • 上記のようにCDN cache など他のもキャッシュ技術もあるが今回のように「Google画像検索で見つかった画像」はGoogleの cache が原因なのだ

Note

こちらの stackoverflowでの質問(https://stackoverflow.com/questions/55317398/how-can-i-refresh-google-image-search-cache) を参考にするとこの cache を削除するようGoogleに依頼できるようだったのだ。

なので、古いコンテンツの削除ツールにアクセスして一応今回で不要になった古い cache は削除するようにリクエスト送ってみたのだ。

即時 cache のクリアはされなかったけど数日待ってみたいと思うのだ。

images don't change often, so we don't reindex them frequently. It would take a while, but should work.
https://www.seroundtable.com/google-image-indexing-21533.html

参考文献

Discussion