2009-07-28 12 views
13

イメージがキャッシュまたはサーバーからのものかどうかを確認する方法。私のホームページには45枚の画像が含まれています。 F5を押すと、画像がキャッシュかサーバーかを知りたいと思っています。彼らはまた、あなたのサイトは、高速でロードしたいながらイメージがキャッシュから取得されているかどうかを確認する方法

私は、もちろん任意のキャッシュされたイメージを持っていません<%@ OutputCache Duration='120' Location='Client' VaryByParam='none' %>

答えて

10

新しい訪問者を追加しました。サイトの成果をテストしている場合は、キャッシュをクリアするだけです。

それだけでデバッグ用の場合:

  • サファリ優先を通じて有効にすることができる開発者向けメニューを持っています。ここでは、何かがキャッシュからロードされたときに、Webインスペクタのリソースタブに0msが表示されます。詳細を表示すると、これらのケースではリクエストヘッダーが見つからないことがわかります(古いレスポンスヘッダーは引き続き表示できます)。
  • Firefoxを使ってLive HTTP Headersアドオンを使用すると、サーバーから要求された内容が正確に表示されます。要求されていない場合は、キャッシュからロードされました。 (その場合には、何もさえIf-Modified-Sinceヘッダーを使用していない、要求されません。)
  • でも、FirebugアドオンがインストールされたFirefoxはあなたのネットのタブを与えるが、それが有効になっている場合、Firefoxが再び常に要求すべてのコンテンツを意志[更新]をクリックせずに一部のリンクをたどっている場合(の場合はIf-Modified-Sinceのヘッダーを使用する場合は、下記を参照してください)。しかし、これはあなたに "Not Modified"と表示されます。 Firebugの一部のライト版もInternet Explorerで利用できます。

F5 /更新を打つことは何か、それはキャッシュがまだ有効であることを知っていても、ブラウザがすでにキャッシュされたコンテンツのために変更された場合、常には、サーバーを尋ねるほとんどのブラウザを作ることに注意してください。リクエストにはIf-Modified-Sinceヘッダーが含まれます。サーバーが変更されていないと指示した場合、キャッシュが使用されます。 Like:

GET /ga.js HTTP/1.1 
Host: www.google-analytics.com 
... 
If-Modified-Since: Mon, 22 Jun 2009 20:00:33 GMT 
Cache-Control: max-age=0 

HTTP/1.x 304 Not Modified 
Last-Modified: Mon, 22 Jun 2009 20:00:33 GMT 
Date: Sun, 26 Jul 2009 12:08:27 GMT 
Cache-Control: max-age=604800, public 
Server: Golfe 

上記はサイトを移動するだけとは異なります。リンクをクリックしたり、後で(アドレス、ブックマーク、検索結果などを入力して)ページに戻ったときに、ブラウザは何かが変更されているかどうかを尋ねずに、キャッシュが有効であれば自動的に使用します。

(またプロキシサーバは、いくつかのキャッシングを行う可能性があることに注意。上記応答では、Cache-Controlpublicは、プロキシが実際にその特定の応答をキャッシュできることを示している。)

4

あなたは、サーバー側からこれを判断することができます

+1

これは良い回答です - キャッシュされた画像とサーバーまたはCDNから取得した画像を使用しているユーザーの割合を探している場合は、イメージリクエスト数に対するページリクエスト数。たとえば、ページ要求の数が画像要求の数の2倍の場合、約半数のユーザーがキャッシュされた画像を使用しています。 –

関連する問題