1

クライアントが永久に(またはキャッシュがクリアされるまで)キャッシュするHTTP応答を送信するには、ブラウザがそのリソースを必要とするときにHTTP要求を行わず、代わりにローカルファイルシステムからHTTP応答を取得するようにするにはどうすればよいですか?

使用上の注意:これは、Ajaxアプリケーションのバージョン管理されたクライアントコード用です。すべては、キャッシュできないexample.com/front.htmを介してアクセスされます。この例には、無期限にキャッシュされるexample.com/currentversion/bootstrap.jsにリンクするスクリプトタグが含まれているだけです。キャッシュできないHTMLファイルが現在のバージョンを決定するため、クライアントがスクリプトを更新する必要はありません。

4

2 に答える 2

2

RFCによると、「応答を「期限切れにならない」とマークするには、オリジンサーバーは応答が送信されてから約1年後に有効期限を送信します。HTTP/1.1サーバーは1年以上先の有効期限を送信しないでください。 。」

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21を参照してください。

1年の制限の背後にある理由がわからないので、それが何であるかを考えてみてください。

于 2012-08-02T23:44:34.563 に答える
2

2038年までキャッシュします。32ビットのUnixエポックバグのため、(確実に)それ以上進むことはできません。このヘッダーを使用します:

Expires: Sun, 17 Jan 2038 19:14:07 GMT
于 2012-08-02T23:35:40.400 に答える