¿Buscando una solución al problema “Especificar caché de navegador” para el javascript https://www.google-analytics.com/analytics.js que se muestra Google PageSpeed Insights? No busques más, en este post te mostraré cual la solución así como lo que causa este problema.
El problema y su origen
Si has probado la herramienta de Google con muchos sitios web sabrás que este error es de lo más común, ¿quien no ha tenido el siguiente texto en su PageSpeed Insights?
Especificar caché de navegador
Establecer una fecha de caducidad o una edad máxima en las cabeceras HTTP de los recursos estáticos indica al navegador que cargue los recursos descargados previamente del disco local en lugar de hacerlo a través de la red.
Aprovechar el almacenamiento en caché del navegador de estos recursos almacenables en caché:
- https://www.google-analytics.com/analytics.js (2 horas)
El problema lo ocasiona curiosamente el js de Analytics, propiedad del propio Google, al establecer la caducidad en nada más y nada menos que 2 horas.
Solución al problema
Si haces caso a lo que dice Google la realidad es que no hay solución a este problema y es imposible alcanzar un 100 en PageSpeed Insight, pero la realidad es otra. Fuera de lo recomendado existen varios métodos para modificar ese tiempo de carga y conseguir un OK.
Plugin WordPress
Si usas WordPress tengo buenas noticias para ti, existe un plugin capaz de arreglar el problema con analytics.js creando un archivo idéntico en tu hosting el cual sí puedes personalizar. Yo mismo lo he probado y funciona perfectamente.
El plugin se llama Complete Analytics Optimization Suite (CAOS) y puedes descargarlo de manera gratuita desde la biblioteca de WordPress.
Código modificado o añadido
Además del plugin también existen alternativas viables como modificar el código o añadir otro. Sinceramente no he probado este método porque en caso de actualizarse Analytics yo tendría que ocuparme de manera manual de actualizar todo, pero si quieres probar esta solución aquí te dejo algunos enlaces útiles: