ホームページ >バックエンド開発 >PHPチュートリアル >Http リクエスト ヘッダーとレスポンス ヘッダーのキャッシュ制御を理解する方法
Web サイトは WordPress、リクエスト ヘッダーの Cache-Control は no-cache、レスポンス ヘッダーは nginx で設定した max-age=259200 です。それで、ブラウザーはキャッシュしましたか? 。 。
Request Headersview sourceAccept:*/*Accept-Encoding:gzip, deflate, sdchAccept-Language:zh-CN,zh;q=0.8Cache-Control:no-cacheConnection:keep-aliveCookie:CNZZDATA1254790698=1245005062-1429681029-%7C1429681029Host:yuanzi.mePragma:no-cacheReferer:http://yuanzi.me/User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36Response Headersview sourceAccept-Ranges:bytesCache-Control:max-age=259200Connection:keep-aliveContent-Length:100922Content-Type:application/javascriptDate:Wed, 22 Apr 2015 06:13:34 GMTETag:"55371597-18a3a"Expires:Sat, 25 Apr 2015 06:13:34 GMTLast-Modified:Wed, 22 Apr 2015 03:29:27 GMTServer:nginx/1.6.2
リクエスト ヘッダーの Cache-Control はキャッシュなしです。これはブラウザがサーバーに通知します: ローカルにキャッシュされたデータはありません
Cache-Control:max応答ヘッダーの -age =259200 はブラウザーに通知するためです: 259200 秒以内は気にしないで、自分でバッファーから更新してください
リクエスト ヘッダーの Cache-Control は no-cache であり、通知するブラウザーですサーバー: ローカルにキャッシュされたデータはありません
Cache-Control:max-age=259200 の応答ヘッダー Cache-Control:max-age=259200 は、ブラウザに通知します: 259200 秒以内に気にしないで、バッファから更新してください自分自身
リクエストヘッダーのキャッシュコントロールも 259200 に設定する必要があると思いました。 。
応答ヘッダーに Cache-Control=no-cache がある場合、ブラウザはそれをキャッシュしません
しかし、応答ヘッダーはキャッシュしないため、キャッシュされる必要があります。
ただし、キャッシュがあってもブラウザによっては利用できない場合があります。ブラウザーには他の設定があるため
同時に、すべてのキャッシュ関連ヘッダーがブラウザーによって受け入れられるわけではありません。Cache-Control=no がある場合、プロトコルは単なる提案であり、実装する必要はありません。 -キャッシュを応答ヘッダーに入れてから参照します。 サーバーはキャッシュしません
ただし、キャッシュがあってもブラウザによっては利用できない場合があります。ブラウザには他の設定があるため
同時に、すべてのキャッシュ関連のヘッダーがブラウザによって受け入れられるわけではありません
モデレーターの Xu さん、ありがとうございます