3

docroot に index.php ファイルがあります。次で始まる出力が生成されます。

<!DOCTYPE html> 
<html manifest="manifest.appcache">

manifest.appcache は、オフラインで使用するためにブラウザにキャッシュするように指示します。繰り返しますが、関連する部分:

CACHE MANIFEST

#version 8-25-2011

CACHE:

#internal HTML documents
#this tells the browser to cache the HTML it retrieves from http://example.com/
/

NETWORK:
*

このセットアップではオフライン アクセスは正常に機能していますが、Firefox で期待していたように更新が機能しません。

Chrome と Safari では、index.php ファイルを更新してから cache.manifest ファイルのコメントを変更すると、ブラウザは新しい index.php 出力を取得してキャッシュで使用します。

ただし、Firefox では、manifest.appcache ファイルを更新してもかまわないようです。十分に待てば更新されると思いますが、何時間も待ってみました。

キャッシュの問題を見つけて解決するにはどうすればよいですか?

4

2 に答える 2

4

index.php ファイルで送信している HTTP キャッシュ ヘッダーは何ですか? Cache-control:やヘッダーなどを設定していない場合Expires:、Firefox は、サーバーから再度要求するのではなく、通常のキャッシュからページのアプリケーション キャッシュ バージョンを更新している可能性があります。

質問の投稿者による編集:

正確に何が必要だったか知りたい人のために、この回答とhttp://www.diveintohtml5.info/offline.htmlの熟読に基づいて .htaccess ファイルに入れたものを次に示します。

<Files *.appcache>
    ExpiresActive On
    ExpiresDefault "access"
</Files>

次の人に役立つことを願っています!

于 2011-09-06T08:14:41.703 に答える