Solucionar el error “err_too_many_redirects” en WordPress

El error err_too_many_redirects” en WordPress es un problema de bucle de redirecciones, que puede estar causado por diversas razones, que vamos a ver en este artículo.

 

err_too_many_redirects

 

 

 

 

 

¿Cómo solucionar “err_too_many_redirects” en WordPress?

 

Para solucionar el error “err_too_many_redirects” primero tenemos que entender las causas, y encontrar dónde está el error, ya que el problema puede tener diferentes causas; pero no te preocupes, vamos a ver cuales son esas posibles causas.

Este error puede aparecer también con otros mensajes de error, como por ejemplo:

  • la pagina no se esta redirigiendo adecuadamente
  • esta pagina web tiene un bucle de redireccionamiento

 

Vamos a ver las posibles soluciones a este problema.

Este error puede aparecer cuando estás migrando tu sitio de un hosting a otro, aunque puede que simplemente aparezca en otros momentos simplemente porque hay algunos problemas con algunos ficheros de WordPress o con algunos plugins.

 

Vamos a analizar las posibles razones del error “esta página te ha redirigido demasiadas veces“.

 

 

Posibles razones del error “err_too_many_redirects

 
La causa general está clara, algo está haciendo que tu sitio web se redireccione constantemente.

Este error de redirecciones puede estar provocado por configuraciones erróneas de redirecciones en el fichero .htaccess, por redirecciones a nivel de hosting, por plugins instalados conflictivos, por restos de plugins desinstalados que causan conflictos, o incluso por reglas de página de Cloudfare incorrectas (Cloudfare es un proxy inverso).
 
Puede ser una redirección de todas las páginas de tu sitio web, o solo una redirección que afecte a ciertas URL´s, o que afecte solo a las páginas http, por ejemplo.

Para comprobar qué bucle de redirecciones está llevando a cabo tu sitio web tendremos que utilizar un chequeador de redirecciones y comprobar el código de respuesta de la cabecera web. Por ejemplo la web Redirect-checker o la de Redirectcheck, que hacen lo mismo pero mostrando los resultados de una forma algo diferente.

 

De esta forma comprobamos las redirecciones que el sitio web está realizando, y además el código de respuesta, que casi seguro será un código 301, que es de redirección permanente.

Si aparece el código 200, entonces la web carga de forma correcta, sin redirecciones:

codigo web 200 estado correcto

 

Si aparece una redirección 301, dependiendo de la situación, puede ser lo correcto. Por ejemplo, nos interesa que el sitio se redireccione desde http a https. Ese caso sería correcto.

Pero si aparecen redirecciones constantes en bucle, puedes ver algo como esto:

 

Este error puede aparecer cuando estás migrando tu sitio de un hosting a otro, aunque puede que simplemente aparezca en otros momentos simplemente porque hay algunos problemas con algunos ficheros de WordPress o con algunos plugins.

Vemos un ejemplo del bucle de redirecciones chequeando las cabeceras y el estado de la web  con una de las webs anteriores :

bucle redireccion wordpress

 

Podemos ver cómo la página se redirecciona de https a http y así constantemente, debido a que hay varias redirecciones incorrectas y opuestas que están provocando este bucle de redirecciones.
 

 

Problemas de redirecciones con el fichero .htaccess

 

Revisa tu fichero .htaccess y comprueba los últimos cambios realizados porque es probable que por algún plugin (o tú manualmente)  se haya añadido alguna redirección incorrecta que no esté sentándole bien a tu WordPress.

El fichero .htaccess se encuentra en la raíz del sitio FTP

fichero htaccess wordpress
 

 

Redirecciones en el fichero .htaccess para redireccionar todo el sitio a HTTPS

 
Cuando instalamos un certificado web y redireccionamos todo el sitio a HTTPS a navegación segura es necesario instalar perdón es necesario configurar una redirección de todo el contenido anterior de HTTP a HTTPS.

Está redirección puede entrar en conflicto con otros plugins o con la dirección HTTPS que se puede configurar dentro del hosting. No se puede configurar está redirección varias veces, es importante que esté configurada en un solo sitio, sino entraremos en el bucle de redireccionamiento.
 

–> La mejor opción aunque un poco más difícil para algunos, es configurar la redirección del sitio web a HTTPS de forma global en el fichero .htaccess.

–> Aunque igual prefieres configurarla en tu panel de hosting. A  continuación puedes ver la opción. Si usas cpanel, se encuentra en las sección “Dominios“, y ahí puedes encontrar la opción “ENABLE FORCE HTTPS REDIRECT” para redireccionar todas las peticionesa ese dominio hacia https.
 
Pero ten en cuenta que si configuras esta redirección en un sitio, no puede estar en más sitios (Regla de página Cloudfare, fichero .htaccess, plugin WordPress Redirect, o redirección desde cpanel).

 

redireccionar https desde hosting - enable force https redirect

 

En definitiva, las redirecciones de HTTP a HTTPS en varios sitios a la vez pueden estar causando bucles de redirecciones constantes y mal hechas.
 

 

Fichero de .htaccess en directorios donde no debe estar

 
Parece una tontería, pero si has subido una nueva versión de tu fichero .htaccess, y en lugar de subirlo a la raíz del sitio, lo has subido dentro de otro directorio diferente de tu instalación WordPress, eso te estará causando el problema de redireccionamiento.

Por ejemplo, aquí puedes ver lo que te comentaba, un fichero .htaccess dentro del directorio “wp-admin” :

 

fichero htaccess en directorio equivocado

 

Sí, lo has adivinado, ese fichero no debe estar ahí y es lo que en este caso estaba provocando la redirección en bucle de WordPress. Elimina el fichero .htaccess y llévalo adonde debe estar (a la raíz del sitio web) y solucionado.
 

 

Restos de plugins viejos, como por ejemplo wordfence

 
Puede ser que tengas restos de plugins con referencias a rutas de tu hosting viejo que tendrás que modificar; esto suele pasar más que nada cuando migras WordPress de un hosting a otro.

En el caso de Wordfence, este plugin de seguridad para WordPress guarda el archivo user.ini en la raíz de tu FTP y guarda la ruta física de los archivos del hosting;
Si has cambiado de hosting esta ruta estará equivocada y puede ser una de las causas del error.

Me refiero a esto:

wordfence archivo user.ini wordpress

Como se puede ver en la imagen, el firewall de Wordfence apunta a una ruta concreta de tu hosting; si esa ruta ha cambiado, tendrás problemas. Corrige la ruta y ya está; si necesitas averiguar la ruta de tu hosting, podrás verlo en tu cpanel, aunque también puedes averiguar la ruta de tu hosting con este fichero php.

–> Otra opción es desinstalar el plugin y eliminar los restos de ficheros relacionados con el plugin. Si no puedes acceder a tu instalación WP, simplemente comenta el nombre de la carpeta del plugin en el directorio wp-plugins, y el plugin se deshabilitará.

 

Wordfence también deja otros ficheros como por ejemplo el fichero “wordfence-waf.php” dentro de la ruta raíz de tu hosting. Si estás eliminando el plugin y todos los restos, elimina también este fichero.
 

 

Restos de Wordfence en el fichero .htaccess

 
Wordfence también deja restos en el fichero .htaccess que se encuentra en la raíz del sitio, como esto:

# Wordfence WAF
<IfModule LiteSpeed>
php_value auto_prepend_file '/home/****/public_html/****/wordfence-waf.php'
</IfModule>
<IfModule lsapi_module>
php_value auto_prepend_file '/home/****/public_html/****/wordfence-waf.php'
</IfModule>
<Files ".user.ini">
<IfModule mod_authz_core.c>
Require all denied
</IfModule>
<IfModule !mod_authz_core.c>
Order deny,allow
Deny from all
</IfModule>
</Files>
 
# END Wordfence WAF

 

 

Elimina estas líneas referentes a Wordfence de tu fichero .htaccess si ya no usas el plugin, o corrige la ruta si ha cambiado.
 

 

Otra solución para reparar una instalación WordPress con restos de ficheros y basura.

 
Cuando estés seguro de que el problema está en restos de ficheros y plugins de WordPress, lo que puedes hacer para reparar tu instalacióon WordPress es borrar los directorios wp-admin y wp-includes , y restaurarlos por una versión limpia, recién descargada de estos directorios WordPress. Procura que sean de la misma versión de WordPress que tienes instalada.

Parece un poco radical pero resulta ser una de las soluciones más eficaces cuando has migrado de hosting y cambiado muchos plugins en tu sitio web. Si tenías ficheros que estaban donde no debían estar, restos y basura en diversos directorios, es una buena forma de hacer limpieza general de tus ficheros del sitio web WordPress.

 

 

Otros problemas con plugins

 
De forma general diremos que otros plugins WordPress pueden crear problemas de redirecciones. Si lo decimos así sin mucho más detalle es porque realmente puede ser cualquier plugin, aunque los candidatos a ser más problemáticos son plugins de seguridad o de redirecciones.
 

 

Solución general para problemas con plugins WordPress

 
Pero la solución siempre es la misma; si tenemos la duda de si el causante de ciertos problemas es un plugin (en este caso el problema de redirección en WordPresspodemos ir a nuestro espacio FTP y cambiamos de nombre el directorio /wp-content/plugins. Así:

deshabilitar directorio pluins wordpress

 

De esta forma hemos deshabilitado todos los plugins de WordPress. Después de hacer esto, probamos de nuevo a acceder al sitio web para ver si se ha solucionado el problema

Al haber cambiado de nombre el directorio “plugins” ,desactivamos todos los plugins de golpe. Si haciendo esto tú WordPress carga correctamente ya sabes que el problema es uno de los plugins.

Ahora solo tienes que encontrar cuál es el plugin culpable de los problemas.

Para encontrarlo puedes hacer lo mismo que con el directorio de “plugins
Primero vuelves a dejar el directorio “plugins” con su nombre original para que de nuevo se activen todos los plugins.

Y luego tendrías que ir uno por uno cambiando el nombre de los directorios de los plugins, por ejemplo les puedes poner un guión delante tal como hemos visto.
Y luego los vas activando uno a uno y comprobando si la web carga correctamente.

Igual no hace falta que cambies el nombre a todos los directorios de todos los plugins porque igual a ti te huele por dónde van los problemas.

Si te imaginas cuál o cuáles pueden ser los plugins culpables o por lo menos los que más posibilidades tienen de haberte afectado, pues comienza por esos.

 

 

Problemas y soluciones por redirecciones al usar Cloudfare

 
Si usas Cloudfare y tienes un problema de redirecciones, tienes que revisar sobre todo estas dos cosas que vamos a comentar.
 

 

Bucle de redirecciones al usar el certificado SSL de Cloudfare y la opción Flexible SSL

 

Por último y no menos importante ¿qué pasa cuando utilizamos CloudFlare y su certificado HTTPS? O sea si utilizamos Cloudfare y la opción de Flexible SSL, que nos permite configurar un certificado https para el sitio web wordpress.

Pues en principio cuando utilizamos Flexible SSL  es necesario utilizar también el plugin de CloudFlare para Flexible SSL en WordPress,  esto ayuda a evitar ese bucle de redirecciones en WordPress tan problemático. El plugin es “Flexible SSL for CloudFlare“:

plugin ssl cloudfare wordpress

 

Si vamos a configurar el certificado SSL para el sitio web wordpress con Cloudfare, tenemos que instalar y activar este plugin.
 

 

Problemas con reglas de página (Page Rules) incorrectas en Cloudfare

 
Pero además no tenemos que olvidarnos de una cosa: las reglas de página de Cloudfare.
 

 

Excluir el backend de WordPress de la caché de Cloudfare

 
Las reglas de página permiten configurar de forma general varios aspectos del sitio,  o bien aplicar una regla a a todo el sitio o aplicar una regla al directorio wp-admin por ejemplo.
 
Respecto a esto, está recomendado excluir el directorio wp-admin de la caché de Cloudfare, porque sino puedes cachear los contenidos y no podrías actualizar posts por ejemplo, o verías versiones anteriores cacheadas del backend (la zona de administración) de tu web  … un lío.

Regla de página Cloudfare para deshabilitar la caché de WordPress para tu panel de administración:

regla de pagina cloudfare para deshabilitar cache

También puedes añadir otras opciones como la de : “Desactivar Rendimiento” o “Minificador automático Off

 

 

Revisar “Reglas de página” Cloudfare conflictivas que estén creando un bucle de redirecciones en WordPress

 

Por ejemplo si estás migrando el antiguo sitio asegúrate de comprobar las reglas de página y cuando estés migrando desactívalas porque si no te puedes volver loco, pueden entrar en conflicto.

Es decir estás migrando la web, instalando el certificado y a la vez activando flexibles SSL de cloudFlare.

Pero resulta que recibes constantemente el error de redirección mal hecha o de bucle de redirecciones, ya has probado todos los pasos anteriores y ya no sabes que hacer.

 

A lo mejor resulta que tienes instalado correctamente ya el certificado SSL, el fichero .htaccess y las redirecciones correctamente configuradas, pero en tu sitio sigue mostrando una redirección en bucle.

Pues a lo mejor es que tienes una regla de página antigua en la cual todo el tráfico para el sitio está definido como HTTP y con la opción de flexible SSL desactivado.

Una regla de página como esta:

error reglas pagina Cloudfare

En mi caso esto me pasó y es una tontería en la que no cae no caí previamente, no tuve en cuenta que hacía tiempo en este sitio HTTP con cloudFlare había habilitado una regla de página marcando todo el tráfico como HTTP y sin certificado…  por tanto el sitio web no paraba de redireccionar de HTTP a HTTPS y así constantemente hasta el infinito …