Domanda

C'è una pagina particolare che vorrei il browser per sempre carico, soprattutto quando l'utente preme il tasto indietro del browser per arrivare ad essa.

Quindi, io uso la seguente direttiva 'Cache-Control' nell'intestazione per questa pagina (prendendo il PHP direttamente dal mio codice).

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

Questo funziona per FF, IE e Chrome, ma Safari (5.0.1) sembra ignorare la direttiva e non riesce a ricaricare la pagina (tra più utenti, in modo che non sembra essere un problema specifico di impostazione). La ricerca non ha rivelato alcun bug conosciuti, così sto assumendo c'è qualcosa che non va sulla mia estremità.

Tutti gli indicatori sarebbe molto apprezzato.

Aggiornamento:. Appena trovato questa risposta su SO

ignorando la mia no-cache

Non ho ancora provato, ma sembra promettente. Molto strano che si tratta di un'aggiunta al tag body, così Im scettico.

È stato utile?

Soluzione

La risposta è quello di includere il seguente attributo nel tag corpo per forzare Safari per ricaricare la pagina:

onunload=""

Come in:

<body onunload="">

Ho trovato questo qui: il browser Safari ignorando la mia no-cache

Che a sua volta ha ottenuto da questa discussione: C'è una croce -browser onload evento quando si fa clic sul pulsante indietro?

Altri suggerimenti

Si veda anche questo rapporto Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=71509

sto vivendo lo stesso problema, e sembra essere quello di essere un bug in Safari.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top