Demasiadas redirecciones después de mover WordPress a HTTPS

RESPUESTA DIRECTA
El error de WordPress de «demasiadas redirecciones» después de pasar a HTTPS suele significar que WordPress, el servidor web, un plugin de seguridad o un proxy inverso no coinciden sobre si la solicitud es segura. Confirma que ambas URL de WordPress usan HTTPS, configura la detección de proxies de confianza cuando corresponda y mantén una sola redirección HTTP a HTTPS definida deliberadamente. Vacía las cachés pertinentes e inspecciona la cadena de redirecciones después de cada cambio controlado.
Puntos clave
- Configura WordPress Address (URL) y Site Address (URL) con el mismo origen HTTPS final.
- Si una CDN o un proxy inverso termina TLS, verifica que el origen reciba información precisa sobre el protocolo reenviado.
- Evita aplicar simultáneamente la exigencia de HTTPS en plugins,
wp-config.php,.htaccess, Nginx, los controles del hosting y las reglas del proxy. - El contenido
http://codificado normalmente provoca advertencias de contenido mixto, no el bucle de redirecciones en sí. - Purga las cachés del navegador, WordPress, el hosting y la CDN después de corregir la configuración.
Site Administrator
Qué significa este error y cómo reconocerlo
- El sitio funcionaba mediante HTTP antes de la migración a HTTPS y después empezó a mostrar «demasiadas redirecciones».
- El navegador cambia repetidamente entre HTTP y HTTPS, o solicita repetidamente la misma dirección HTTPS.
- Puede fallar todo el sitio, o solo
/wp-admin, la página de inicio de sesión o determinadas rutas. - Abrir la dirección HTTP puede producir una redirección HTTPS esperada seguida de redirecciones repetidas, en lugar de una respuesta normal.
- La navegación privada u otro dispositivo pueden comportarse de forma diferente debido a redirecciones, cookies o datos del sitio almacenados en caché.
Causas principales, ordenadas por probabilidad
- La configuración de URL de WordPress todavía usa HTTP. Si WordPress Address (URL) o Site Address (URL) sigue usando HTTP mientras otra capa exige HTTPS, WordPress puede redirigir a un esquema que entra en conflicto con la política del servidor.
- La exigencia de HTTPS existe en varias capas. Un plugin de seguridad, la lógica de
wp-config.php, una regla de.htaccesso Nginx, una configuración del hosting y una regla del proxy pueden solaparse o hacer suposiciones diferentes sobre el esquema de la solicitud. - Una CDN o un proxy inverso termina TLS. El visitante se conecta mediante HTTPS, mientras que la conexión con el origen usa HTTP. Si el protocolo original falta, es incorrecto o no se confía en él de forma segura, WordPress puede creer repetidamente que la solicitud no es segura.
- Un plugin o un tema redirige una ruta específica. Los plugins de inicio de sesión, administración, URL canónicas, seguridad y membresías pueden afectar únicamente a
/wp-login.php,/wp-admino determinadas páginas. - Una redirección almacenada en caché o una cookie del navegador obsoleta oculta la corrección. Es menos probable que sea la causa original, pero puede hacer que una configuración corregida parezca seguir fallando.
- Quedan referencias antiguas a HTTP en el contenido o la configuración. Normalmente provocan advertencias de contenido mixto o una redirección adicional, no un bucle de redirecciones en todo el sitio; investígalas después de corregir la cadena principal.
Cómo solucionarlo
1. Inspecciona la cadena de redirecciones
Usa una ventana de navegación privada para realizar una comprobación inicial. Si tienes acceso al shell, asigna una variable de shell con la dirección HTTPS real del sitio afectado y ejecuta esta solicitud de solo lectura:
SITE_URL='the actual HTTPS site address'
curl -IL "$SITE_URL"Registra cada código de estado y cada encabezado Location:. La alternancia entre HTTP y HTTPS suele indicar un conflicto en la detección del esquema o en las reglas de redirección. La repetición de la misma dirección HTTPS apunta más a una redirección canónica, de un plugin, del proxy o almacenada en caché. No incluyas credenciales, cookies ni encabezados de autorización.
2. Comprueba ambas configuraciones de URL de WordPress
Si el escritorio está disponible, abre Settings → General y verifica que WordPress Address (URL) y Site Address (URL) usen el mismo origen HTTPS previsto, incluido cualquier subdirectorio necesario.
Si el bucle bloquea el escritorio, un administrador autorizado con acceso SFTP o a la base de datos puede definir temporalmente los valores en wp-config.php:
define( 'WP_HOME', 'the actual canonical HTTPS address' );
define( 'WP_SITEURL', 'the actual canonical HTTPS address' );Haz una copia de seguridad del archivo primero y realiza un único cambio controlado. Estas constantes sustituyen a los campos correspondientes del escritorio mientras están definidas, así que elimínalas o gestiónalas deliberadamente después de realizar las pruebas.
3. Determina dónde termina TLS
Determina si el navegador se conecta directamente al servidor web o a través de una CDN, un balanceador de carga o un proxy inverso. Cuando un proxy termina TLS, el origen puede recibir una conexión HTTP aunque el visitante haya usado HTTPS.
Pide al administrador del hosting o del proxy que confirme que el protocolo original se reenvía de forma coherente y que WordPress está configurado para reconocerlo únicamente desde el proxy de confianza previsto. No confíes ciegamente en X-Forwarded-Proto procedente de clientes arbitrarios; un encabezado reenviado sin validación puede crear problemas de seguridad.
4. Reduce la exigencia de HTTPS a una sola capa definida
Enumera todos los lugares que pueden redirigir HTTP a HTTPS:
- Reglas de la CDN o del balanceador de carga
- Configuración SSL del panel de hosting
- Configuración de Apache
.htaccesso Nginx - Plugins de seguridad o SSL
- Código personalizado de
wp-config.phpo del tema
Mantén la exigencia en la capa que corresponda a la arquitectura del hosting, normalmente el extremo de la red o el servidor web, y desactiva las redirecciones conflictivas a nivel de aplicación. Haz copias de seguridad de la configuración y obtén la aprobación del administrador antes de cambiar las reglas del servidor. Valida la configuración antes de cualquier recarga o reinicio aprobado; no reinicies un servidor web de producción como primer paso de diagnóstico.
5. Prueba por separado las rutas de inicio de sesión y administración
Si la interfaz pública funciona pero /wp-admin o el inicio de sesión entra en un bucle, revisa los plugins de seguridad, inicio de sesión, URL canónicas y caché modificados recientemente mediante un procedimiento de mantenimiento aprobado. Un conflicto entre plugins es más probable cuando solo entra en bucle una ruta. Si es necesario desactivar un plugin para realizar pruebas, registra el cambio, conserva los controles de acceso y vuelve a activarlo o sustitúyelo después de la prueba.
6. Purga las cachés y vuelve a probar
Después de registrar el comportamiento original y realizar una corrección controlada, borra los datos del sitio del navegador y purga las cachés de páginas u objetos de WordPress, además de las cachés del hosting y la CDN. Vuelve a probar la dirección HTTP, la página de inicio HTTPS, la página de inicio de sesión y una página interna representativa. Una respuesta 301 o 302 almacenada en caché puede persistir después de corregir la configuración activa.
7. Actualiza las referencias HTTP restantes
Una vez corregida la cadena de redirecciones, haz una copia de seguridad de la base de datos antes de cambiar las URL almacenadas. Usa una herramienta de migración de WordPress fiable o una búsqueda y sustitución con WP-CLI, empezando por una ejecución de prueba, y utiliza una herramienta que gestione los datos serializados de WordPress. Sustituye únicamente el origen antiguo del sitio por el origen HTTPS; no reemplaces de forma general todos los valores http://, porque las URL de terceros y los recursos externos intencionados pueden no pertenecer al sitio.
Prevención y cómo verificar la solución
- Registra el origen HTTPS canónico del sitio y actualiza ambas configuraciones de URL de WordPress durante la migración.
- Elige una ubicación documentada para la redirección HTTP a HTTPS y revisa las demás capas antes de activar un plugin de forzado de SSL.
- Documenta si una CDN o un proxy inverso termina TLS y cómo obtiene el origen el protocolo original.
- Prueba la página de inicio, una página interna, el inicio de sesión y el escritorio después de cada cambio en la configuración HTTPS.
- Haz copias de seguridad de la configuración y de la base de datos antes de editar
wp-config.php, las reglas de reescritura o las URL almacenadas. - Cuando las redirecciones funcionen, realiza una migración específica de URL a HTTPS y comprueba si quedan referencias de contenido mixto.
Cuándo pedir ayuda externa
Contacta con el proveedor de hosting o el administrador de la CDN/balanceador de carga cuando no puedas determinar qué capa devuelve cada encabezado Location:, cuando el origen y el extremo de la red indiquen esquemas diferentes o cuando cambiar las reglas de reescritura pueda afectar a otros sitios. Contacta con el desarrollador del plugin cuando solo entre en bucle una ruta controlada por un plugin después de confirmar la configuración del servidor, las URL de WordPress y la detección del proxy. Comparte el nombre de host, las rutas afectadas, la hora aproximada de la prueba y una cadena de redirecciones con los datos sensibles ocultos; elimina antes las cookies, los encabezados de autorización y otros valores confidenciales.
Preguntas frecuentes
¿Una configuración incorrecta de las URL de WordPress puede causar un bucle de redirecciones HTTPS?
Sí. Si WordPress Address o Site Address sigue usando HTTP mientras otra capa exige HTTPS, WordPress y el servidor pueden no coincidir sobre el esquema canónico. Configura ambas con el origen HTTPS previsto, incluido cualquier subdirectorio necesario.
¿Por qué WordPress redirige indefinidamente detrás de una CDN o un proxy inverso?
La CDN puede servir HTTPS al visitante mientras se conecta al origen mediante HTTP. Si el protocolo original no se reenvía o WordPress no reconoce de forma segura el valor reenviado de confianza, WordPress puede seguir tratando la solicitud como no segura.
¿Debería desactivar todas las redirecciones HTTPS excepto la del plugin?
No automáticamente. La capa adecuada de exigencia depende de la arquitectura del hosting. Elige una sola capa definida, verifica que gestione el tráfico previsto y elimina las reglas conflictivas en lugar de activar otra redirección a ciegas.
¿Un enlace HTTP antiguo de una publicación puede causar «demasiadas redirecciones»?
Por lo general, no. Los enlaces internos antiguos normalmente provocan una única redirección de HTTP a HTTPS o advertencias de contenido mixto. Actualízalos, pero inspecciona primero la cadena de respuesta real si el sitio entra en un bucle.
¿Por qué solo se redirigen wp-admin o la página de inicio de sesión?
Un plugin de seguridad, inicio de sesión, URL canónicas o HTTPS de administración puede aplicar una regla específica para esa ruta. Revisa los plugins modificados recientemente y la configuración de HTTPS de administración, y comprueba también la detección del esquema del proxy y las cookies.
¿Vaciar la caché solucionará el bucle de redirecciones?
Puede eliminar una respuesta 301 o 302 obsoleta almacenada en caché, pero no corregirá un conflicto de configuración activo. Vacía las cachés después de una corrección controlada y vuelve a verificar los encabezados de respuesta.
Documentación adicional
Para consultar detalles de implementación, revisa la documentación de WordPress sobre WP_HOME, WP_SITEURL y la detección de HTTPS; la documentación de las reglas de reescritura del servidor web activo; la documentación de la CDN o del proxy inverso sobre el tratamiento del protocolo reenviado; y la documentación de cualquier plugin de SSL, seguridad, inicio de sesión o caché implicado. Usa indicaciones que coincidan con la pila de hosting real del sitio, porque el comportamiento de las redirecciones varía entre un origen directo y un HTTPS gestionado mediante proxy.