0

コンテンツの一部が常に変化する動的な Web ページがあります。

リクエストごとに異なるコンテンツは、Javascript と HTML で構成されます。

Web サイトが適切に表示されるためには、javascript と HTML がサーバーから 100% 新鮮である必要があります。時々発生するページエラーは、サーバーからの新しいデータではなく、古い/以前にロードされたJavaScriptまたはHTMLの結果であることを確認しました。

.htacces で次の設定を関連付けました。

Header Set Cache-Control "max-age=0, no-store"

上記の設定は機能していますが、問題は毎回画像をリロードする必要があることです。これは不要であり、サイトのパフォーマンスに悪影響を及ぼします.

.htacces でも​​次の設定を試しました。

### turn on the Expires engine
ExpiresActive On

### expires after a month in the client's cache
ExpiresByType image/gif A36000
ExpiresByType image/png A36000
ExpiresByType image/jpg A36000
ExpiresByType image/x-icon A36000
ExpiresByType application/pdf A36000
### ExpiresByType application/x-javascript A36000
### ExpiresByType text/plain A36000

ただし、コンテンツが常に最新であるとは限らず、ページエラーが発生することを確認したため、上記は機能していないようです。

私の質問:

常に(生成されたphpスクリプトによって)新しいHTMLとjavascriptが使用されるようにサーバーを適切に構成するにはどうすればよいですか?

4

2 に答える 2

1

画像とは異なる有効期限の text/html および css ファイルについてはどうですか?

ExpiresByType text/html "access plus 5 seconds"
ExpiresByType text/css "access plus 5 seconds"
ExpiresByType image/jpg "access plus 5 minutes"
etc
于 2012-05-24T10:29:15.537 に答える
0

アプリに同じ更新要件がある場合、次の (php) を使用しました。

// disable cache (ajax useful)
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
于 2012-05-24T10:21:28.550 に答える