Firefox y el cacheo de las redirecciones 301 de .htaccess

Firefox y el cacheo de las redirecciones 301 de .htaccess

A partir de la versión 5 de Firefox, se introdujo una funcionalidad y era la de cachear las redirecciones. Esto personalmente, no me gusta nada y mucho menos si eres un developer y tienes que estar testeando tu aplicación no quieres que se cachen este tipo de eventos. Más adelante explicaré que también es normal que se tengan que cachear este tipo de redirecciones.

Si Firefox cachea redirecciones a nivel de .htaccess, renderizará las viejas redirecciones en vez de las nuevas actualizadas en el .htaccess.

Ahora bien cual es el problema? Pues que como no tengas esto en cuenta puedes estar trabajando en tu código y estar el tiempo que sea hasta que te des cuenta que tan solo se trata de vaciar la cache de firefox, puede ser una tonteria pero me ha pasado en un par de ocasiones estar mas de media hora trabajando y al final darme cuenta que es el cacheo de las redirecciones en firefox y cabrearme bastante!!

Seguro que a mas de uno le ha pasado.

Lo explicaré con un ejemplo

Vamos a decir que tenemos la url /tienda/categoria1-categoria2-subcategoria1-subcategoria2-c-10_10.html (este es un formato presente en las url de oscommerce)

Hago una redireccion a una url nueva y mejor para SEO, con el siguiente formato /tienda/categoria1-categoria2/subcategoria1-subcategoria2

Para ello creo una simple redireccion a nivel de .htaccess (esta redirección contiene un error)

RewriteRule ^tienda/([a-z]+)-([a-z]+)-([a-z]+)-([a-z]+)-c-([0-9]+)_([0-9]+).html$ http://%{HTTP_HOST}/tienda/$1-$2-$3/$4 [R=301,L]

Pruebo la redireccion que he creado en el navegador y la url vieja me está redirigiendo al siguiente tipo de url nueva
/tienda/categoria1-categoria2-subcategoria1/subcategoria2 upss esta url está mal no es lo que quería!! tendré que cambiarlo.

Volvemos al .htaccess y lo cambiamos por el patrón correcto

RewriteRule ^tienda/([a-z]+)-([a-z]+)-([a-z]+)-([a-z]+)-c-([0-9]+)_([0-9]+).html$ http://%{HTTP_HOST}/tienda/$1-$2/$3-$4 [R=301,L]

Introduzco la url vieja y me sigue redirigiendo a la url anterior cuyo formato era /tienda/categoria1-categoria2-subcategoria1/subcategoria2.

Vaya que estará pasando? vuelvo a .htaccess y sigo haciendo cambios, ninguno funciona, sigue rediriendigo a la misma url por mas cambios que hago, después de un rato ya caigo, maldito cacheo!! En el Menu de firefox > Herramientas > Limpiar el historial reciente y seleccionar cache, pulsar el botón “limpiar ahora”.

Ahora ya redirige a mi url nueva y mejorada.

Conclusión

Como he puesto en el título del artículo esto tan sólo ocurre con las redirecciones tipo 301, por lo menos es con las que he llegado a probar. Si el tipo es 302,304 o un 307 no me ha cacheado la redirección.

Mas allá de que el problema sea de Firefox, ya que las pruebas que he hecho con Chrome e IE 8 no me ha cacheado la redireción, las redirecciones 301 son un tipo de redireccion permanente por lo que tiene sentido que sean cacheadas, ver un listado de los posibles tipos de códigos para los status de las peticiones http.

Para evitar esto habrá que ver que política se usa en el comportamiento de cache-control http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9 metiendo un tiempo de cacheo muy breve o directamente un Cache-Control: no-cache.

La otra solución es vaciar siempre la cache del navegador cuando se hacen pruebas con redirecciones 301.

Para hacerlo más rápido se puede instalar la extensión “clear cache button”

Y meterlo en la barra de navegación para tenerlo siempre accesible

Tags de búsquedas:

documento expirado en firefox,porque chrome para Android te redireccióna tanto,301 redirección permanente,redireccion https firefox,mostrar redirecciones firefox,firefox eliminiar redireccion apache,firefox documento expirado,firefox cachea redirecciones,firefox,evitar cache navegador redireccion,evitar acortadores en firefox,documento expirado firefox,como limpio de redirecciones de una cuenta?,redirecciones permanentes firefox

Noticias relacionadas »

2 comentarios en Firefox y el cacheo de las redirecciones 301 de .htaccess

  1. Mauro
    / Responder

    gracias!

  2. martin
    / Responder

    Me ha pasado eso hace unas semanas y estuve bastante tiempo hasta que me di cuenta de esto que tu marcas…. 🙁

    Seguramente este post ayudara a muchos otros!
    Saludos

Deja un comentario

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

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Invertir en criptomonedas: »

 

Cómo comprar bitcoin

Invertir y comprar Bitcoin y otras altcoins es más fácil de lo que crees.

1) Si sólo quieres comprar Bitcoin, Ethereum o Litecoin como inversión, tu opción es Coinbase

2) Si quieres probar con otras criptomonedas tu opción es Binance

3) Cualquier duda escríbeme con total libertad al formulario de contacto para resolver dudas: https://www.pedroventura.com/contacto/

¡Comparte este artículo! »

  • Irene (3 días)
    I used www.zerobounce.net and it is an amazing platform for…
  • Felipe Albornoz (4 días)
    Agradecido. Saludos.
  • Joel (2 semanas)
    Este grupo es buenísimo hay personas de todo el mundo…
  • Citricus (3 semanas)
    Análisis muy buenos y detallados: Crypto Trading Campus https://t.me/cryptotradingcampus
  • Vane (2 meses)
    Hola muy buena información, en lo personal mino con Javascript…
  • Gabriel Roncancio (2 meses)
    Hola Pedro, gracias por compartir. Tu artículo me dió algunas…

Suscríbete al newsletter »

Proporciona tu correo electrónico a continuación y recibe las últimas noticias! Funciona con Feedburner de Google

Archivo »

Leer entrada anterior
Mantener session PHP cuando se cambia entre HTTP a HTTPS. Evitar perder session

Desde hace un tiempo que estaba teniendo un problema en mi aplicación en una zona restringida para los administradores y...

Cerrar