1

Apache で作業している joomla アプリケーションがあります。サイトのパフォーマンスを向上させるために、.htaccess ファイルをアプリケーションのルートに書き込み、すべての静的コンテンツに遠い将来の期限切れヘッダーを設定しました。必要に応じて、最初にファイルが 200 ステータス コードで新しく読み込まれます。同じリンクをもう一度クリックすると、多くのファイルがキャッシュから直接提供されます。2つのことについて説明が必要です

  1. f5 を押すと、いくつかのファイルが 304 ステータス コードでロードされますが、ステータス ヘッダーを取得するためにサーバーにヒットすることなく、キャッシュから直接ファイルが読み込まれると予想していましたか?

  2. ブラウザを閉じて再び同じページに戻ると、ブラウザのキャッシュから直接読み込まれると思っていたのに、304 ステータス コードで多数のファイルが読み込まれるという同じことが起こっていることがわかります。

304 もブラウザ キャッシュからファイルを提供することは理解していますが、静的ファイルは決して変更されないため、サーバー間のヘッダー通信を避けたいと考えています。また、リクエストが https 接続を介して行われていることを追加したいと思います。これにより、問題が発生します。

4

2 に答える 2

0

安全なセッションを使用すると、実際にキャッシングで問題が発生する可能性があります。

セキュリティのため、多くのブラウザは SSL セッション中以外は SSL データをキャッシュしません。ブラウザまたはタブを閉じると、SSL キャッシュがフラッシュされます。

Firefox には、これを制御する構成オプションがあります。IEについてはわかりません。この動作をオーバーライドする Cache-Control ヘッダーが存在する可能性もあります。

Cache-Control ヘッダーは HTTP/1.1 であり、Expires と同様に使用する必要があります。Cache-Control は、キャッシュを制御するためのより多くの機能を提供します。

于 2010-05-11T18:54:43.100 に答える
0

ブラウザーには、有効期限に基づいて、キャッシュされたコンテンツの要求を送信するためのアルゴリズムがあります。通常、遠い将来のヘッダーを持つコンテンツは、期待どおりにリロードされることはありません。ただし、リロードまたは F5 を押すと、これが無視され、すべてのページ コンテンツのページ リロードが強制されます。

これをテストするには、カーソルをアドレス バーに戻し (Win では ALT-d)、Enter キーを押します。これは、ページを再表示するようなもので、ブラウザは期待どおりに動作するはずです。

于 2010-05-12T17:55:46.253 に答える