Foros del Web » Programando para Internet » PHP »

Contenido no se actualiza en IIS con PHP a menos que pulse F5

Estas en el tema de Contenido no se actualiza en IIS con PHP a menos que pulse F5 en el foro de PHP en Foros del Web. Hola amigos, acabo de terminar un sitio para un cliente bastante importante y se me esta presentando un problema que no logro resolver... se los ...
  #1 (permalink)  
Antiguo 31/12/2011, 11:05
 
Fecha de Ingreso: julio-2007
Mensajes: 178
Antigüedad: 16 años, 9 meses
Puntos: 1
Contenido no se actualiza en IIS con PHP a menos que pulse F5

Hola amigos, acabo de terminar un sitio para un cliente bastante importante y se me esta presentando un problema que no logro resolver... se los cuento a ver si pueden echarme una mano, gracias desde ya.

El tipo de problema es tipico, pero no logro darle soluciona. En mi sitio web, funcionan un carrito de compras entre otras cosas... pero resulta ser, por ejemplo que si agrego productos y voy al carrito, los mismos no aparece. Solo lo hacen al apretar F5. Por lo que deduzco que la web se encuentra en CACHE, por eso utilizo:

Código PHP:
header ("Expires: Fri, 14 Mar 1980 20:53:00 GMT"); //la pagina expira en fecha pasada 
header ("Last-Modified: " gmdate("D, d M Y H:i:s") . " GMT"); //ultima actualizacion ahora cuando la cargamos 
header ("Cache-Control: no-cache, must-revalidate"); //no guardar en CACHE 
header("Cache-Control: no-store, no-cache, must-revalidate");  
header("Cache-Control: post-check=0, pre-check=0"false);  
header ("Pragma: no-cache"); //PARANOIA, NO GUARDAR EN CACHE 
Pues eso tampoco funciona, no hay caso.. Siempre veo el sitio sin cambios a menos que presione F5...

Les cuento que uso PHP con APACHE2, montado en un IIS propio, el mismo detrás de un ISA server de la empresa.. Puede tener esto relación ??

Desde ya les agradecería cualquier ayuda o sugerencia! Buen Año!
  #2 (permalink)  
Antiguo 31/12/2011, 11:13
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: Contenido no se actualiza en IIS con PHP a menos que pulse F5

Apache no tendrá conflictos con IIS siempre y cuando uno de los 2 use el puerto 80 mientras el otro use otro puerto.

el código que tienes funciona para evitar que el navegador cacheé la respuesta, bien, pero no te funciona todavía porque el navegador aún conserva la caché de la petición antigua, por lo que no ha recibido los nuevos headers, debes de borrar manualmente la caché del navegador cliente al menos una vez para que obtenga los cambios, luego de eso no se cacheará .

otras formas de evitar ello es con un parámetro fantasma, o reemplazando la petición de GET por POST, saludos
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 31/12/2011, 11:21
 
Fecha de Ingreso: julio-2007
Mensajes: 178
Antigüedad: 16 años, 9 meses
Puntos: 1
Respuesta: Contenido no se actualiza en IIS con PHP a menos que pulse F5

Hola maycolalvarez, graicas por responder!!

Te comento que efectivamente, tengo al IIS en el 80 y a Apache en el 8080. También he eliminado todas las cookies, cache y temporales de mi navegador. Lamentablemente pese a esto el problema persiste.

Como tu dices, en caso de utilizar url fantasmas con numero aleatorios es sitio funciona correctamente. Pues lo pruebo manualmente. Pero me es totalmente imposible implementar esto en todo el sitio pues el mismo es bastante grande. Ademas de utilizar muchas url Amigables del misitio.com.ar/carrito_de_compras.

En verdad no se mas que hacer con esto. Debería haber alguna manera de solventar el problema sin las url de paramentos fantasma.

Gracias de todos modos! Sigo investigando!
  #4 (permalink)  
Antiguo 31/12/2011, 11:26
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: Contenido no se actualiza en IIS con PHP a menos que pulse F5

¿que navegador estás usando?, intenta con otros navegadores, con eliminar la caché debe de bastar, a no ser que IE no esté eliminando realmente la caché, cosa que no me extraña , recurre al limpiador del sistema operativo para eliminar todo vestigio de archivos temporales.
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #5 (permalink)  
Antiguo 31/12/2011, 17:07
 
Fecha de Ingreso: julio-2007
Mensajes: 178
Antigüedad: 16 años, 9 meses
Puntos: 1
Respuesta: Contenido no se actualiza en IIS con PHP a menos que pulse F5

Hola amigos! les comento que ya pude solucionar el problema! Se debia a un error garrafal que tenia en el .htaccess, donde tenia esto:

Código PHP:
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault A300
ExpiresByType image
/x-icon A2592000
ExpiresByType application
/x-javascript A3600
ExpiresByType text
/css A604800
ExpiresByType image
/gif A604800
ExpiresByType image
/png A604800
ExpiresByType image
/jpeg A604800
ExpiresByType text
/plain A604800
ExpiresByType application
/x-shockwave-flash A604800
ExpiresByType video
/x-flv A604800
ExpiresByType application
/pdf A604800

</IfModule
EL problema se soluciono al eliminar lo anterior... lo cual mas tarde remplace por lo siguiente:

Código PHP:

ExpiresActive On

ExpiresDefault A0

ExpiresByType image
/jpg A1209600

ExpiresByType image
/jpeg A1209600

ExpiresByType image
/ico A1209600

ExpiresByType image
/gif A1209600

ExpiresByType image
/png A1209600

ExpiresByType text
/css A1209600

ExpiresByType text
/javascript A1209600 
Desde ya les agradezco a todos, especialmente a maycolalvarez que me dio una mano!!! Muchas gracias! y feliz año!

Etiquetas: contenido, iis, menos, actualizar
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 00:35.