Foros del Web » Programando para Internet » PHP »

Como hago para no almacenar en cache?

Estas en el tema de Como hago para no almacenar en cache? en el foro de PHP en Foros del Web. Estoy usando esto para no almacenar en cache del browser la pagina: header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Last-Modified: " . gmdate("D, d M ...
  #1 (permalink)  
Antiguo 16/11/2002, 21:05
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 22 años, 5 meses
Puntos: 0
Como hago para no almacenar en cache?

Estoy usando esto para no almacenar en cache del browser la pagina:

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");

Pero se me almacena igual. Cuando por medio de header(Location) redirecciono a esa pagina, me muestra la version anterior... que mas me falta hacer?
  #2 (permalink)  
Antiguo 16/11/2002, 21:39
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 22 años, 5 meses
Puntos: 0
Mas especificamente, lo que no consigo "no cachear" son las imagenes.
  #3 (permalink)  
Antiguo 16/11/2002, 22:01
Avatar de AngelRoyo  
Fecha de Ingreso: marzo-2002
Ubicación: Santiago de Chile
Mensajes: 207
Antigüedad: 22 años, 8 meses
Puntos: 5
Actualizar tu navegador Internet Explorer.
Podria ser una solución.
__________________
Hacerlo Bien Haciendo el Bien.
Jaso ezazu agur bero bat.
(c) 2002. Made in Chile.
Mi sistema es:
Win(98);Apache(1.3.x);PHP(4.1.1);mySQL(3.23.x)
!Califica este POSTEO¡
  #4 (permalink)  
Antiguo 16/11/2002, 22:59
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 22 años, 5 meses
Puntos: 0
Como "webmaster" esa no es una solucion que les pueda dar a los usuarios.

Alguien conoce la forma?
  #5 (permalink)  
Antiguo 18/11/2002, 16:58
Avatar de BVis  
Fecha de Ingreso: noviembre-2002
Ubicación: Barcelona
Mensajes: 104
Antigüedad: 22 años
Puntos: 0
Aquí tienes la solución...

A buen seguro que las cabeceras las has puesto en el script que llama a la imágen, no?

Y la imagen la llamas de forma normal con HTML:

<img src="imagen.jpg">

no?

Pues así no servirá, lo que consigues es que el .php no esté almacenado en caché, pero no así la imagen.

Para eso tienes que hacer algo parecido:

<img src="script_en_php_que_muestra_imagen.php?imagen=h ola.jpg">

Después creas el "script_en_php_que_muestra_imagen.php" que deberá contener lo siguiente:

<?php

header("Content-Type: image/jpeg");
header( "Expires: Mon, 20 Dec 1998 01:00:00 GMT" );
header( "Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT" );
header( "Cache-Control: no-cache, must-revalidate" );
header( "Pragma: no-cache" );

@readfile($_GET['imagen']);

?>

Lo he pegao más o menos de memoria, pero si no hay error de sintaxis, debería funcionar.

1 Saludo.

Aullidos - BVis
  #6 (permalink)  
Antiguo 18/11/2002, 17:34
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 22 años, 5 meses
Puntos: 0
Pero, no era que no se podia especificar un header luego de haber mandado algo al cliente, como <img.. ?
  #7 (permalink)  
Antiguo 18/11/2002, 21:07
Avatar de BVis  
Fecha de Ingreso: noviembre-2002
Ubicación: Barcelona
Mensajes: 104
Antigüedad: 22 años
Puntos: 0
Has entendido o probado lo que he escrito arriba???

Hazlo y despues me preguntas dudas.
  #8 (permalink)  
Antiguo 18/11/2002, 23:49
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 22 años, 5 meses
Puntos: 0
Mmmm, si, lo habia probado y me generaba ese error, pero era un problema mio de otra parte del script....
Funciona de maravillas! Muchisimas gracias!!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:30.