Modificación del archivo wp-config.php ("home/carpeta_web/www/wp-config.php") añadiendo las siguientes líneas de código al inicio del mismo:
Código: Seleccionar todo
define( 'FORCE_SSL_ADMIN', true );
if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https'){ $_SERVER['HTTPS']='on'; }
1. Entornos de Proxy Inverso: Cuando WordPress está detrás de un proxy inverso (como Nginx o un balanceador de carga), las solicitudes HTTPS pueden no llegar directamente al servidor de aplicaciones. En su lugar, el proxy puede enviar las solicitudes como HTTP, lo que puede causar que WordPress no reconozca que la conexión es segura.
2. Redirección Infinita: Si WordPress no detecta correctamente que la conexión es HTTPS, puede intentar redirigir a la versión HTTPS de la página, lo que resulta en un bucle de redirección infinita. Esto ocurre porque el servidor sigue interpretando que la conexión es HTTP y redirige a HTTPS, pero el proxy ya ha manejado la conexión como HTTPS.
Explicación del Código
- define( 'FORCE_SSL_ADMIN', true );: Esta línea fuerza a WordPress a utilizar HTTPS en el área de administración. Esto es útil para asegurar que las sesiones de administración estén protegidas.
- El bloque if que verifica $_SERVER['HTTP_X_FORWARDED_PROTO']: Esta parte del código comprueba si el encabezado X-Forwarded-Proto está presente y si su valor es `https`. Este encabezado es comúnmente utilizado por proxies inversos para indicar el protocolo original de la solicitud. Si se cumple la condición, se establece $_SERVER['HTTPS'] en on, lo que le indica a WordPress que la conexión es segura.
Conclusión
Aunque no es habitual tener que hacer estas modificaciones en todas las instalaciones de WordPress, es una solución común en configuraciones específicas donde se utilizan proxies inversos o balanceadores de carga. Si tu sitio está configurado de esta manera, es importante asegurarte de que WordPress reconozca correctamente el protocolo HTTPS para evitar problemas de redirección.