Quizás has actualizado un texto o reemplazado una fotografía en tu página web, pero cuando quieres visualizar esos cambios en tu navegador web preferido, notas que esos cambios no aparecen, en cambio, continúas visualizando el texto o la imagen que deseabas eliminar.
Si has sido víctima de esa experiencia alguna vez, este post te ayudará a resolver el misterio.
Hablemos del Caché
Todos recordamos algún momento en el cual nuestro computador nos mostró un mensaje en el navegador de Internet que decía algo como “borrar o limpiar caché”.
Vamos a hablar un poco sobre lo más básico del caché y cuál es el propósito que tiene en cuanto a su relación con el navegador de la web.
¿Qué es el Caché?
La palabra es de origen francés, y su uso original era para hablar de compartimientos escondidos en maleteros de viaje y bolsos similares.
La palabra significa “oculto” y en el mundo moderno se conoce mucho más por su uso diario en la navegación por Internet.
En términos de informática, la memoria cache es básicamente memoria que se almacena en software o en hardware para obtener resultados óptimos.
La función principal es que el procesador de tu computadora pueda tener acceso más rápido a la memoria RAM. Ahora, en este caso, nos estamos refiriendo al caché de tu navegador web. El concepto en sí es el mismo, ya que es como un compartimiento oculto que permite a tu computador almacenar datos y archivos de una página web para acelerar su velocidad de carga.
Entre estos datos pueden estar imágenes, códigos de java, códigos de HTML, CSS y otros contenidos de multimedia.
De esta manera, cada vez que tu entras en un sitio web, el cache se cargará desde tu ordenador y esto hará más rápido el acceso a esa página en particular.
¿Cuándo es Necesario Saltarlo?
El caché es algo muy beneficioso, pero su uso puede ser problemático para los programadores de una web.
Digamos por ejemplo que estamos diseñando o remodelando un sitio para un cliente. Este nos pide que pongamos un nuevo color de fondo en el sitio web, pero cuando hacemos el cambio y le decimos que lo revise, el cliente encuentra que el cambio no está listo en la página.
Lo primero que pensara el cliente es que tú no sabes hacer tu trabajo y te responderá mencionando que no hay ningún cambio.
Tu quedarás sorprendido y revisarás en tu navegador para darte cuenta de que el cambio quedó bien después de que refrescaste la página, pero el cliente dice que no está listo.
¿Cuál es Entonces la Solución para un Usuario Final/Cliente?
Refrescar la página web en un navegador, no es mucho más que presionar un par de teclas en forma simultánea.
¿Como Hacerlo en Chrome?
Hay una combinación de teclas que te permite lograr actualizar la página y evitar que se cargue por medio del cache, el cual ya quedará actualizado una vez que la cargues de esta forma.
Es importante que sepas sobre esto para que puedas decirle a tu cliente cómo hacerlo en caso sea necesario, pero la idea es evitar tener que hacerlo.
Solo debes presionar Comand+Shift+R
¿Como Hacerlo en Safari de Mac?
Los usuarios de Mac también suelen tener este problema, pero es fácil hacerlo en caso de que sea necesario como los es en Chrome. En Safari se trata de algo muy simple también y se hace al pulsar ⌘R.
Si bien podrías decirle a tu cliente que haga esto, no puedes esperar que tu cliente tenga que pedirles a sus visitantes que también lo hagan para ver el cambio.
Como puedes ver, esto no es nada práctico y crea un problema que puede hacer que tus clientes te vean como alguien poco profesional.
¿Cuál es Entonces la Solución para el Programador?
Si quieres lograr que todos los cambios de la página sean vistos automáticamente por los visitantes del sitio, lo que debes hacer, “de forma temporal”, es crear un método que funcione por medio del código de la página.
Así, se descarta la necesidad de obligar al navegador a guardar los datos en el caché, y así, los cambios se verán de inmediato en todos los navegadores de los visitantes sin importar su configuración, la cual está por defecto configurada para guardar el caché.
Recuerda que el propósito del cache es hacer que visitas futuras a un sitio web sean más rápidas al cargar muchos de sus códigos, imágenes y demás multimedia directamente desde sus propios computadores.
Por lo tanto se sugiere, que ésta práctica sea con un fin temporal. De esta forma se evita que todo tenga que volver a ser cargado desde Internet.
Evitando el Caché en HTML
El proceso es muy sencillo ya que lo único necesario es poner el código a continuación dentro de las etiquetas HEAD> </HEAD>:
<meta http-equiv="Expires" content="0"> <meta http-equiv="Last-Modified" content="0"> <meta http-equiv="Cache-Control" content="no-cache, mustrevalidate"> <meta http-equiv="Pragma" content="no-cache">
Evitando el Caché en WordPress
En WordPress, puedes añadir estas etiquetas en el HEAD editando el archivo “header.php” donde se encuentran las etiquetas <HEAD> y </HEAD> entre las que debemos ingresar el código anterior.
Evitando el Caché en PHP
También es posible forzar a una aplicación desarrollada en PHP a evitar el cache de navegador, para ello debemos utilizar el siguiente código en el archivo PHP modificado:
<?php header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 header("Expires: Sat, 1 Jul 2000 05:00:00 GMT"); // Fecha en el pasado ?>
Con esto nos aseguraremos de que el cache se resetee en todos los navegadores web y proxy http que visiten el sitio web.
Conclusión
Ahora que ya tienes una mejor idea de cómo funciona el cache de tu navegador, es importante tomar en cuenta este método cada vez que estés trabajando en el diseño de una web y tengas que enseñársela a tu cliente.
No olvides además, que el forzar el salto del caché debe ser una práctica de tipo “temporal”, solo hasta que te hayas asegurado, por un corto tiempo, de que todos los antiguos visitantes al sitio, hayan visualizado las modificaciones realizadas al sitio web, luego, podrás retirar el código de salto de caché, para que el sitio web cargue a mayor velocidad.