La caché y por qué no veo actualizado mi sitio web

La caché y por qué no veo actualizado mi sitio web

A veces resulta frustrante acceder a nuestro sitio web después de haber realizado algunos cambios y no verlos en nuestro navegador. ¿Qué puede estar pasando para no ver los cambios de mi sitio web en un navegador?

Para entenderlo hay que explicar de forma muy sencilla cómo tratan los navegadores a las páginas web y a los elementos que contienen. Imaginemos una página web con una imagen de fondo. El navegador se comunica con el sitio web, obtiene la página web, detecta que tiene un imagen de fondo, le solicita esa imagen al sitio web, la imagen se descarga en nuestro ordenador y el navegador presenta la página web junto con la imagen de fondo. Si se solicitase la misma página varias veces y descargáramos siempre la misma imagen de fondo gastaríamos tiempo en solicitar de nuevo una imagen que seguramente no cambiará en mucho tiempo.

Para evitar lo anterior, mejorando los tiempos de carga de una página y evitando descargas innecesarias, los navegadores almacenan los ficheros que descargan (por ejemplo las imágenes) localmente. A este almacén de ficheros del navegador se le denomina “caché”. En el ejemplo anterior, cuando se solicita la misma página con una imagen de fondo por segunda vez, el navegador detecta que ya tiene la imagen localmente y no la descarga del sitio web (hay muchos más detalles técnicos, pero de cara a entender cómo funciona el “caché” esta información es suficiente).

A veces sucede que el navegador utiliza un fichero local, en el ‘caché’, aunque en el sitio web exista una versión más reciente del mismo fichero, y por tanto no vemos la página actualizada. En estos casos se puede indicar al navegador que ignore los ficheros que tiene almacenados localmente y vuelva a solicitar todos los elementos de una página web. Se puede forzar la carga completa de una página web utilizando estas combinaciones de teclas según el navegador y el sistema operativo:

En Windows y Linux:
Firefox, Chrome, IE y Edge: Ctrl + F5

En macOS:
Safari, Firefox y Chrome: ⌘ + Shift + R

Otras veces el ‘culpable’ de que no se vean los cambios en el sitio web no es el navegador. Puede suceder que entre nuestro navegador e internet haya un ordenador que hace de intermediario (un servidor proxy caché). El objetivo detrás del uso de estos equipos intermediarios es similar al “caché” de nuestro navegador: las empresas suelen minimizar el tráfico de internet utilizando un ‘proxy caché’. Si una persona de la empresa solicita una página web y posteriormente más personas de la empresa también la solicitan, el “proxy caché” la habrá almacenado la primera vez que la recogió de internet (junto con el resto de elementos de la página) y para el resto de veces devolverá la página que ya tiene guardada, sin tener que acceder a internet.

El problema puede surgir si entre el momento en que el “proxy caché” almacenó la página web en su primera solicitud y una siguiente vez en que se solicita la misma página ésta ha sido modificada. Para el  “proxy caché” la página todavía podría estar dentro de su vida útil y en vez de recoger la página web de internet devolverá al navegador una versión obsoleta de la página guardada localmente. Se pueden utilizar las mismas combinaciones de teclas indicadas anteriormente para forzar al ‘proxy caché’ a descartar los ficheros que tenga almacenados y volver a solicitarlos al sitio web.


Rubén Razquin

Dedicado al análisis y desarrollo de software en entornos web (21 años de experiencia). Desarrollo de aplicaciones para dispositivos móviles.

Siempre descubriendo y buscando nuevas ideas.

“El talento da en la diana en la que nadie más puede dar. El ingenio da en la diana que nadie más puede ver.”


Deja un comentario

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

  He leído y acepto la política de privacidad de la web *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Current ye@r *

No hay comentarios