¿Qué es el almacenamiento en caché?
El almacenamiento en caché se refiere al almacenamiento a corto plazo de archivos, como imágenes y páginas web, de modo que los mismos archivos no tengan que cargarse cada vez que se visualiza una página. Esto generalmente acelera la experiencia para el usuario, ya que reduce la cantidad de datos que deben cargarse. El almacenamiento en caché puede ocurrir en muchos lugares. Por ejemplo, tu navegador web puede almacenar archivos en caché para que no tenga que descargar cada archivo de una página nuevamente si ya has visitado esa página antes.
Una Red de Entrega de Contenidos (CDN) como Cloudflare también almacenará archivos en caché a una escala mayor, de modo que después de que un archivo haya sido accedido en nombre de un usuario, el mismo archivo pueda almacenarse en sus servidores para otros usuarios también, sin tener que hacer solicitudes adicionales al servidor de origen. Al almacenar en caché de esta manera, las CDNs pueden reducir el tiempo que lleva proporcionar un archivo almacenado en caché al usuario.
Almacenamiento en caché, Cloudflare y CSS
Un posible problema con el almacenamiento en caché es que puede llevar a una situación en la que los cambios en un sitio no sean inmediatamente visibles para los visitantes del sitio. Esto puede suceder tanto si el sitio ha sido almacenado en caché por un navegador web como por un servidor.
Aunque normalmente hay medidas de seguridad para evitar que el almacenamiento en caché se convierta en un problema, esto puede ser un problema particular con las hojas de estilo en cascada (CSS). Si estás usando Cloudflare con tu sitio, ellos almacenarán en caché tu CSS durante mucho tiempo. Esto significa que si realizas cambios en tu CSS, tardarás en verlos en el sitio en vivo.
Solución al almacenamiento en caché de CSS
Esto se puede resolver alterando la referencia a tu archivo CSS en el HTML de la página dada para que se añada un nuevo string de consulta. Por ejemplo, alterando "ejemplo.css" a "ejemplo.css?v=2.2.2". Esto generalmente hace que tanto las CDNs como los navegadores web se comporten como si fuese un archivo nuevo que no han descargado antes, incluso si lo han hecho.
En el ejemplo dado, Cloudflare mantendrá su solicitud habitual a "ejemplo.css" (el mismo archivo que siempre ha estado usando) y en su lugar hará una solicitud completamente nueva al servidor de origen para obtener la copia más reciente del archivo.
El servidor de origen ignorará el string de consulta "?v=2.2.2", pero sin embargo proporcionará la versión más reciente del archivo. La próxima vez que se actualice "ejemplo.css", esto se puede cambiar a "ejemplo.css?v=2.2.3", o a cualquier número que prefieras, para que Cloudflare una vez más obtenga la versión más reciente.