11

特にユーザーがブラウザーの戻るボタンを押してそのページにアクセスしたときに、ブラウザーに常にロードさせたい特定のページがあります。

そこで、このページのヘッダーで次の 'Cache-Control' ディレクティブを使用します (コードから PHP を直接取得します)。

$headers['Cache-Control'] = 'no-store, no-cache, must-revalidate, max-age=0';

これは FF、IE、および Chrome で機能しますが、Safari (5.0.1) はディレクティブを無視するようで、ページのリロードに失敗します (複数のユーザーにまたがるため、セットアップ固有の問題ではないようです)。検索しても既知のバグは明らかにされていないので、私の側に何か問題があると思います。

どんなポインタでも大歓迎です。

更新:SOでこの回答が見つかりました。

キャッシュなしを無視する Safari ブラウザ

まだ試していませんが、有望に見えます。body タグに追加されているのは非常に奇妙なので、私は懐疑的です。

4

2 に答える 2

6

答えは、次の属性をbodyタグに含めて、Safariにページを強制的にリロードさせることです。

onunload=""

のように:

<body onunload="">

私はこれをここで見つけました:私のno-cacheを無視するSafariブラウザ

これは、このスレッドから取得したものです。[戻る]ボタンをクリックしたときに、ブラウザー間のonloadイベントが発生しますか?

于 2011-06-01T14:42:23.023 に答える
3

次の Webkit バグ レポートも参照してください: https://bugs.webkit.org/show_bug.cgi?id=71509

同じ問題が発生しており、Safari のバグのようです。

于 2011-11-18T06:34:29.833 に答える