Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: dark_sargon en 14 Abril 2012, 20:23 pm



Título: Deshabilitar cache para imagen php
Publicado por: dark_sargon en 14 Abril 2012, 20:23 pm
Un saludo, tengo una imagen .php, es decir, con un header de png.

Esta imagen se carga automáticamente en una página .html cada x tiempo.

El problema es que al parecer se esta almacenando en el cache y esta nunca cambia.

He leido que se puede hacer con el htaccess pero no he tenido éxito.

PD: Utilice el metodo de una variable dummy con éxito de modo archivo.php?num=rand(0,99999) pero me parece un poco feo.

¿Alguien podría ayudarme? Muchas gracias.


Título: Re: Deshabilitar cache para imagen php
Publicado por: Servia en 14 Abril 2012, 21:03 pm

PD: Utilice el metodo de una variable dummy con éxito de modo archivo.php?num=rand(0,99999) pero me parece un poco feo.


Es el más usado.


Título: Re: Deshabilitar cache para imagen php
Publicado por: dark_sargon en 15 Abril 2012, 00:14 am
Ya logré hacerlo funcionar en IE pero en FireFox aun no funciona.

Modifiqué el .htaccess:
Código:
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"

Parece que al final hay que usar ese método. Gracias por responder Servia.


Título: Re: Deshabilitar cache para imagen php
Publicado por: #!drvy en 15 Abril 2012, 02:49 am
Prueba con el propio PHP.

Código
  1. <?php
  2. header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
  3. header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
  4. header("Cache-Control: no-store, no-cache, must-revalidate");
  5. header("Cache-Control: post-check=0, pre-check=0", false);
  6. header("Pragma: no-cache");
  7. ?>


Saludos


Título: Re: Deshabilitar cache para imagen php
Publicado por: dark_sargon en 15 Abril 2012, 04:24 am
Gracias por responder drvy | BSM.
Sigue pasando lo mismo que con .htaccess. Funciona en IE pero en Firefox no.

El problema es que mi script PHP tiene un header de PNG por lo cual es una imagen.
En un .html tengo un JS que hace XMLHttpRequest() cada segundo a un archivo "intermediario" que muestra el contenido del PNG mediante <img src.... />

La pregunta ahora sería... es posible mostrar el resultado de la XMLHttpRequest() de la imagen PNG sin necesidad de un intermediario. (Además esto solucionaría mi problema del vacio mientras carga la imagen).