He intentado cada combinación y permutación de metaetiquetas que se supone que impiden que una página se almacene en caché, ¡pero Firefox STILL almacena en caché la página! Solo necesito que la URL se vuelva a cargar cuando un usuario presiona el botón Atrás. Funciona bien en IE8.¿Cómo realizo la página de recarga de Firefox cuando se presiona el botón Atrás?
He intentado todos estos ...
<meta http-equiv="Cache-Control" content="no-store" />
<meta http-equiv="Pragma" content="no-cache"/>
<meta http-equiv="Expires" content="-1"/>
<meta http-equiv="Expires" content="Sat, 1 Jan 2000 00:00:00 GMT" />
... y también he probado el siguiente JavaScript ...
<input type="hidden" id="refreshed" value="no"/>
<script type="text/javascript">
onload=function(){
var e=document.getElementById("refreshed");
if(e.value=="no"){
e.value="yes";
}
else{
e.value="no";
location.reload();
}
}
</script>
... todo en vano. ¿Que me estoy perdiendo aqui? Las páginas se generan con PHP si eso importa.
ACTUALIZACIÓN 1:
he intentado todas las sugerencias hasta ahora, pero todavía no puede conseguir que esto funcione. Cuando utilizo el código PHP de Chris lo uso como esto ...
<?php
header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
<!--the rest of my page-->
.. y como se puede ver es en la parte superior extrema de mi página web, antes de la cabecera DOCTYPE
.
También he experimentado con session_start()
pero incluso después de leer el manual no estoy seguro de que lo esté usando bien. Lo estaba poniendo justo en la parte superior de mi página también.
Estoy abierto a CUALQUIER SUGERENCIA que lo haga funcionar sin romper la funcionalidad de otra página. Sé que he visto páginas que se vuelven a cargar CADA VEZ que se usa el botón Atrás, ¿CÓMO LO HACEN ?!
¡Solucionado!
Resulta que tenía problemas múltiples que trabajan en mi contra, pero a través de la diligencia debida pude eliminar esos problemas y salir victorioso.
Después de que Chris actualizó su código para ...
<?php
header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
echo time();
?><a href="http://google.com">aaaaaaaaaaaaa</a>
encontré que su código funcionaba efectivamente cuando se utiliza exactamente cómo tuvo que sin nada más, pero cuando lo puse en mis páginas se no funcionó Todas mis páginas son .php
o .html
y todas están adjuntas a DWT (Plantilla Web Dinámica), así que las estaba actualizando todas a la vez con el código de Chris. Lo que no me di cuenta fue que el DWT comienza justo después del encabezado DOCTYPE
, por lo que el código nunca se insertó en mis páginas. No pude encontrar la forma de hacer que el DWT incluyera el encabezado DOCTYPE
, así que entré en todas mis páginas e inserté manualmente el código sobre el encabezado DOCTYPE
.
siguiente me encontré con que a pesar de que mi servidor está configurado para analizar .htm
y .html
como .php
los .html
páginas se genera un error en la parte donde había insertado el código de Chris diciendo algo en el sentido de "no puede modificar las cabeceras, encabezados tienen ya ha sido enviado ". Realmente no me importaban mis extensiones, así que cambié todas mis extensiones .html
a extensiones .php
.
Una pequeña molestia final fue que, aunque la página no estaba siendo almacenada en la memoria caché (como yo quería) Firefox colocaba al usuario en su última ubicación en la página anterior cuando usaba el botón Atrás (es decir, si un usuario en la parte inferior de la página a cuando navegaban hacia la página b, el usuario usaba el botón Atrás en la página b para volver a la parte inferior de la página a, no a la parte superior de la página como lo deseaba). El recorte por mi JavaScript original de esta fijado ...
<script type="text/javascript">
onload=function(){
document.getElementById('content').scrollTop=0;
}
</script>
A pesar de que esto parece muy complicado para un simple problema de este tipo me alegro de que es fijo. Gracias por su ayuda, todos (especialmente Chris).
¿No debería leer ? –
Adam
@ Adam. No lo creo, pero lo intenté en ambos sentidos para asegurarme ... de que no hubo suerte. – ubiquibacon