Foros del Web » Administración de Sistemas » Apache »

Problema con Expires y Cacheo

Estas en el tema de Problema con Expires y Cacheo en el foro de Apache en Foros del Web. hola gente amiga del Apache, es la primera vez q escribo en esta sección siempre pude resolver mis problemas de manera personal, excepto esta he ...
  #1 (permalink)  
Antiguo 14/09/2011, 13:01
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 8 meses
Puntos: 55
Pregunta Problema con Expires y Cacheo

hola gente amiga del Apache, es la primera vez q escribo en esta sección siempre pude resolver mis problemas de manera personal, excepto esta

he agregado en mi sitio cabeceras de expiración a los archivos pero ahora tengo el problema que cuando se actualiza alguno archivo por ejemplo un css este no se actualiza inmediatamente hasta q no se utilizar F5 o actualizar página

Código Apache:
Ver original
  1. <ifmodule mod_deflate.c>
  2. AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript
  3. </ifmodule>
  4.  
  5. <IfModule mod_expires.c>
  6.     ExpiresActive on
  7.     ExpiresDefault "now"
  8.     ExpiresByType text/html "access plus 15 minutes"
  9.     ExpiresByType text/xml "access plus 15 minutes"
  10.     ExpiresByType text/css "access plus 1 month"
  11.     ExpiresByType text/plain "access plus 1 month"
  12.     ExpiresByType application/javascript "access plus 1 month"
  13.     ExpiresByType application/x-javascript "access plus 1 month"
  14.     ExpiresByType application/x-shockwave-flash "access plus 1 month"
  15.     ExpiresByType application/pdf "access plus 1 month"
  16.     ExpiresByType image/gif "access plus 1 month"
  17.     ExpiresByType image/png "access plus 1 month"
  18.     ExpiresByType image/jpeg "access plus 1 month"
  19.     ExpiresByType image/x-icon "access plus 1 month"
  20.     ExpiresByType image/icon "access plus 1 month"
  21.     ExpiresByType video/x-flv "access plus 1 month"
  22.     ExpiresByType video/quicktime "access plus 1 month"
  23. </IfModule>
  24.  
  25. Options -Indexes
  26.  
  27. <FilesMatch "\.(ico|gif|jpg|jpeg|png|flv|pdf)$">
  28. FileETag -INode +MTime -Size
  29. </FilesMatch>
  30.  
  31. <FilesMatch "\.(css|js)$">
  32.     <IfModule mod_headers.c>
  33.         Header set Pragma "public"
  34.         Header set Cache-Control "public, must-revalidate, proxy-revalidate"
  35.     </IfModule>
  36.     FileETag MTime Size
  37. </FilesMatch>

intente muchas alternativas con el cache-control pero no he logrado mi cometido.

pueden darme una mano?
atte
Emilio
__________________
Degiovanni Emilio
developtus.com
  #2 (permalink)  
Antiguo 14/09/2011, 21:06
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Problema con Expires y Cacheo

@Emilio
No alcanzo a entender bien el sistema que implementas, yo trabajo con lo siguiente y me funciona correctamente

Código Apache:
Ver original
  1. #### Cache
  2.  
  3. # anual
  4. <FilesMatch "\.(ico|gif|jpg|jpeg|png|flv|pdf|woff|eot|svg|ttf|flv|swf)$">
  5.   Header set Cache-Control "public, max-age=29030400"
  6. </FilesMatch>
  7. # semanal
  8. <FilesMatch "\.(js|css|htc)$">
  9.   Header set Cache-Control "max-age=604800,public,must-revalidate"
  10. </FilesMatch>
  11. # 3 horas
  12. <FilesMatch "\.(php|html|htm|txt|html5)$">
  13. Header set Cache-Control "max-age=10800,public, proxy-revalidate, no-transform"
  14. </FilesMatch>
  15. # no cachear
  16. <FilesMatch "\.(pl|cgi|spl)$">
  17.     Header unset Cache-Control
  18.     Header unset Expires
  19.     Header unset Last-Modified
  20.     FileETag None
  21.     Header unset Pragma
  22. </FilesMatch>

Modificá los tiempos y extensiones según tu criterio. Los valores que puse son solo un ejemplo.
Para verificar te recomiendo el siguiente método, en firefox, eliminá todo el historial, después cargá la página, en una nueva pestaña abri "about:cache" y fijate si las fechas de expiración coinciden con tus directivas

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 21/09/2011, 15:43
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 8 meses
Puntos: 55
Respuesta: Problema con Expires y Cacheo

bueno probablemente no termine de expresarme del todo bien

la idea es q cachee los archivos en el navegador, pero cuando un archivo se modifica lo vuelva a descargar por mas que el cache este en vigencia aun

Código Apache:
Ver original
  1. <FilesMatch "\.(ico|gif|jpg|jpeg|png|flv|pdf)$">
  2.     Header merge Cache-Control "public"
  3.     FileETag -INode +MTime -Size
  4. </FilesMatch>
  5. <FilesMatch "\.(css|js)$">
  6.     Header merge Cache-Control "public, must-revalidate, proxy-revalidate"
  7.     FileETag -INode +MTime -Size
  8. </FilesMatch>
ahora tengo asi mi htaccess pero no logro el objetivo pretendido
gracias de antemano por la ayuda
__________________
Degiovanni Emilio
developtus.com

Etiquetas: cache, control, expires
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 16:31.