Saltar al contenido

¿Cómo hacer que index.html no se almacene en caché cuando los contenidos del sitio cambian en el sitio web de AngularJS?

Posterior a de esta prolongada recopilación de información solucionamos esta preocupación que tienen muchos usuarios. Te brindamos la respuesta y deseamos resultarte de gran ayuda.

Solución:

Sí, esa es la forma correcta. Tienes que configurar el Cache-Control encabezado para que los navegadores sepan que no tienen que almacenar en caché ningún contenido para esa solicitud.



(Pragma & Cache-Control es lo mismo pero de la especificación HTTP diferente. Vea la respuesta aquí: ¿Diferencia entre Pragma y encabezados de control de caché?)

Vea una de las respuestas relacionadas aquí: How to burst yeoman index.html cache

Como se menciona en los comentarios, es realmente la configuración del servidor lo que desea ver, pero no ha mencionado su configuración. Ejecutamos nuestro sitio AngularJS con un backend .NET usando IIS.

Actualizamos nuestro sitio regularmente y hemos tenido problemas en el pasado con el almacenamiento en caché de recursos JS y CSS, pero lo hemos resuelto a través de la siguiente configuración:

Construir

Usamos gulp para construir nuestra aplicación AngularJS y, como parte de eso, agregamos un número de versión a la cadena de consulta de los archivos CSS y Javascript de nuestra aplicación principal que cambian con frecuencia. Por ejemplo:


Configuración del servidor

En la raíz web.config especificamos que no queremos que index.html se almacene en caché configurando el cache-control, Pragma y Expires solicite encabezados, así como la edad máxima a 0.



  
    
  
    
        
            
            
            
        
      


Referencias:

  • Caché de cliente de IIS: https://docs.microsoft.com/en-us/iis/configuration/system.webserver/staticcontent/clientcache
  • Encabezado HTTP de control de caché: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control
  • Encabezado HTTP Pragma: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Pragma
  • Expires HTTP Header: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Expires

Configurando content valor a 0los navegadores siempre cargarán la página desde el servidor web.


Nos encantaría que puedieras difundir este escrito si lograste el éxito.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *