Probado esto? Debería funcionar en ambos .htaccess
, httpd.conf
y en un VirtualHost
(generalmente colocado httpd-vhosts.conf
si lo ha incluido desde su httpd.conf)
<filesMatch "\.(html|htm|js|css)$">
FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</ifModule>
</filesMatch>
100% evita que los archivos se almacenen en caché
Esto es similar a cómo los anuncios de Google emplean el encabezado Cache-Control: private, x-gzip-ok = ""> para evitar el almacenamiento en caché de anuncios por parte de servidores proxy y clientes.
De http://www.askapache.com/htaccess/using-http-headers-with-htaccess.html
Y, opcionalmente, agregue la extensión para los archivos de plantilla que está recuperando si está usando una extensión distinta de .html
esas.
LoadModule headers_module lib/modules/mod_headers.so
<filesMatch "\.+">
o<filesMatch ^>
Basado en el ejemplo aquí: http://drupal.org/node/550488
Lo siguiente probablemente funcionará en .htaccess
fuente
<IfModule mod_expires.c>
y</IfModule>
... si mod_expires no está habilitado, obtendrá un error en lugar de ignorar esas directivas en silencio.Tuve el mismo problema, pero encontré una buena solución aquí: detener el almacenamiento en caché para PHP 5.5.3 en MAMP
Básicamente encuentre el archivo php.ini y comente las líneas OPCache. Espero que esta respuesta alternativa también ayude a otros.
fuente
Sin mod_expires , será más difícil establecer encabezados de caducidad en sus archivos. Para cualquier cosa generada, ciertamente puede configurar algunos encabezados predeterminados en la respuesta, haciendo el trabajo de mod_expires así:
(tomado de: Respuesta de desbordamiento de pila de @brianegge , donde también se explica la solución mod_expires)
Ahora esto no funcionará para archivos estáticos , como sus archivos javascript. En cuanto a los archivos estáticos, solo hay apache (sin ningún módulo de caducidad) entre el navegador y el archivo fuente. Para evitar el almacenamiento en caché de archivos javascript, que se realiza en su navegador, puede usar un token aleatorio al final de la url js, algo así
?rd=45642111
, para que la url se vea así:Si esta URL en la página es generada por un archivo PHP, simplemente puede agregar la parte aleatoria con PHP. Esta forma de aleatorizar url simplemente agregando parámetros de cadena de consulta aleatoria es la base de la configuración de no caché de la solicitud ajax jQuery, por ejemplo. El navegador nunca considerará que 2 url con cadenas de consulta diferentes sean iguales, y nunca usará la versión en caché.
EDITAR
Tenga en cuenta que también debería probar mod_headers . Si tiene mod_headers, puede configurar los encabezados Expires directamente con la palabra clave Header .
fuente
fuente