El error 520 de Cloudflare es un código de error complejo que indica que una página web no se puede alcanzar. La complejidad del problema radica en la variedad de razones que podrían haberlo causado.
Familiarizarse con las posibles causas es clave para simplificar el proceso de solución de problemas.
Este artículo explica qué significa el error, por qué ocurre y cómo solucionarlo y resolverlo.
¿Qué Es el Error 520?
El error 520 es un mensaje de error de Cloudflare que indica que el servidor web de origen recibió una solicitud inválida o interpretada incorrectamente, lo que resultó en una respuesta vacía.
¿Qué Causa el Error 520?
Las causas más comunes del error 520 son:
- Aplicaciones PHP que se bloquean.
- Registros DNS configurados incorrectamente.
- Archivo .htaccess corrupto o configurado incorrectamente.
- Cabeceras de solicitud grandes y uso excesivo de cookies.
- Faltan cabeceras de solicitud.
- Respuesta vacía del servidor.
¿Cómo Solucionar y Arreglar el Error 520?
Los siguientes pasos describen el proceso de investigación de la causa detrás del error 520 de Cloudflare, para que se pueda tomar la acción apropiada en consecuencia.
Nota: Antes de intentar los siguientes métodos, verifique que el sitio web afectado sea completamente inaccesible y que el estado del sistema de Cloudflare sea “Todos los sistemas operativos”.
1. Pausar Cloudflare
Si el problema radica en Cloudflare, pausarlo hará que la página afectada por el error vuelva a ser accesible.
Para pausar Cloudflare:
- Inicia sesión en tu cuenta de Cloudflare.
- Navega hasta la pestaña “Resumen” en el panel izquierdo.
- Desplázate hacia abajo hasta la sección “Acciones Avanzadas” y selecciona “Pausar Cloudflare en el Sitio”.
2. Verificar Registros DNS
Los registros del Sistema de Nombres de Dominio (DNS) son archivos en servidores DNS autorizados que especifican:
- Qué dirección IP está asociada a un dominio.
- Cómo gestionar las solicitudes entrantes para ese dominio.
Para que Cloudflare funcione correctamente, los registros DNS de Cloudflare deben coincidir con los del sistema de gestión de DNS del dominio.
Para localizar los registros DNS de Cloudflare para un sitio web:
- Inicia sesión en Cloudflare.
- Selecciona el sitio web que muestra el error 520.
- En el menú de la izquierda, selecciona “DNS > Registros”.
Los pasos exactos para acceder a la configuración DNS de un dominio dependen de la plataforma de hosting del sitio web.
3. Reiniciar PHP
El error 520 también ocurre cuando una aplicación PHP se bloquea. En ese caso, reiniciar el servidor web que aloja el sitio web solucionará el problema.
Dependiendo de tu pila de software, PHP se puede reiniciar de varias maneras. A continuación, te proporciono instrucciones sobre cómo reiniciar un servidor Apache o Nginx en diferentes sistemas operativos.
Servidor Web Apache
Para reiniciar un servidor Apache que se ejecuta en un sistema Ubuntu o Debian, ejecuta:
sudo systemctl restart apache2
Para reiniciar un servidor Apache que se ejecuta en un sistema CentOS 7, ejecuta:
sudo apachectl -k restart
Servidor Web Nginx
Para reiniciar un servidor Nginx de manera elegante, ejecuta:
sudo systemctl reload nginx
Para forzar el reinicio de un servidor Nginx, ejecuta:
sudo systemctl restart nginx
Alternativamente, para cerrar y reiniciar forzosamente Nginx y los procesos relacionados, utiliza:
sudo /etc/init.d/nginx restart
Algunas plataformas de alojamiento permiten a los usuarios reiniciar PHP utilizando una interfaz gráfica de usuario (GUI). En ese caso, consulta el manual del usuario de la plataforma de alojamiento o ponte en contacto con el departamento de soporte al cliente.
4. Verificar Encabezados y Cookies
El tamaño máximo permitido para los encabezados de solicitud de Cloudflare es de 32 KB, con 16 KB por encabezado individual. Superar estos límites puede causar que ocurra el error 520.
La información sobre el tamaño de los encabezados de solicitud está disponible en el archivo HAR (Archivo de Registro HTTP) del servidor de origen.
Para generar y extraer un archivo HAR utilizando Google Chrome:
- Abre la página web que muestra el error 520.
- Haz clic con el botón derecho y selecciona “Inspeccionar”.
- Selecciona la pestaña “Red”.
- Marca la opción “Conservar registro”.
- Haz clic en el botón “Limpiar” (ícono de señal de alto).
- Recarga la página.
- Haz clic con el botón derecho en cualquier lugar debajo de las barras de navegación de la herramienta de inspección.
- Selecciona “Guardar todo como HAR con contenido”.
El proceso de generación de un archivo HAR es casi idéntico entre los principales navegadores web, ya que todos están basados en Chromium (excepto Firefox).
Importante: Los archivos HAR contienen información sensible, como cookies, contraseñas y otros tipos de datos personales. Elimina cualquier dato comprometedor antes de compartir archivos HAR con alguien.
La anomalía a buscar en los archivos HAR son las cookies que son demasiado grandes y el uso excesivo general de cookies.
Para reducir el tamaño de las cookies y aligerar la carga de los encabezados de solicitud:
- Elimina complementos de terceros innecesarios del sitio web.
- Limita la sobrecarga de las solicitudes.
- Utiliza un dominio sin cookies.
5. Deshabilitar .htaccess
El archivo .htaccess afecta la configuración global de un servidor Apache sin cambiar los archivos de configuración.
El error 520 puede aparecer cuando una redirección no se ha configurado correctamente en el archivo .htaccess o cuando el archivo en sí está dañado. Deshabilitar el archivo .htaccess revelará si el archivo es problemático.
1. Para deshabilitar el archivo .htaccess, comienza por abrir el archivo apache2.conf en un editor de texto (estamos utilizando nano):
sudo nano /etc/apache2/apache2.conf
La ubicación predeterminada del archivo de configuración de Apache es una de las siguientes:
- /etc/httpd/httpd.conf
- /etc/apache2/httpd.conf
- /etc/apache2/apache2.conf
- /etc/httpd/conf/httpd.conf
2. Encuentra el valor de la directiva AllowOverride y cámbialo a None.
<Directory /var/www/html>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Require all granted
</Directory>
3. Guarda y cierra el archivo.
4. Para aplicar los cambios, reinicia Apache:
sudo systemctl apache2 restart
6. Comprobar los registros de errores del servidor web
Los registros de errores proporcionan información adicional sobre dónde, por qué y qué error ocurrió.
El proceso de localización o generación de registros de errores varía entre los proveedores de alojamiento. Sin embargo, todos los registros de errores tienen una estructura similar y proporcionarán la siguiente información:
- La fecha y hora del incidente.
- La dirección IP del cliente (si el cliente causó que ocurriera el error).
- Un mensaje de error.
- Una ruta al recurso afectado o la línea de código que causa el problema.
7. Comprobar la respuesta de error HTTP con un comando cURL
Los comandos de URL de cliente (cURL) permiten a los usuarios obtener información sobre el código de respuesta de error HTTP y los encabezados de solicitud.
La sintaxis general es:
sudo curl -svo /dev/null https://tusitioaqui.com
Una respuesta exitosa se verá como el siguiente ejemplo:
* Intentando 111.11.1.111...
* Conectado a 111.11.1.111 (111.11.1.111) en el puerto 100 (#0)
> GET /login HTTP/1.1
> Agente de usuario: TuNavegador 1.0
> Aceptar: */*
> Host: ejemplodesitio.com
>
< HTTP/1.1 200 OK
< Content-Type: text/html
< Fecha: Día, DD, Mes Año Hora:Minuto:Segundo ZonaHoraria
{ [11111 bytes de datos]
* Conexión #0 a host 111.11.1.111 se ha cerrado
Sin embargo, el comando no podrá recuperar información si ha ocurrido el error 520 y el resultado se parecerá al siguiente ejemplo:
* Intentando 111.11.1.111...
* Conectado a 111.11.1.111 (111.11.1.111) en el puerto 100 (#0)
> GET /login HTTP/1.1
> Agente de usuario: TuNavegador 1.0
> Aceptar: */*
> Host: ejemplodesitio.com
>
* Respuesta vacía del servidor
* Conexión #0 a host 111.11.1.111 se ha cerrado
8. Contactar con el soporte de Cloudflare
Si ninguno de los métodos anteriores ayudó a localizar la fuente del problema, el siguiente paso es ponerse en contacto con el soporte de Cloudflare.
Cloudflare ofrece dos métodos de soporte:
- Tickets de soporte, disponibles para todas las cuentas y accesibles a través del panel de administración.
- Chat en vivo, disponible solo para cuentas Empresariales y Empresariales.
En ambos casos, los representantes solicitarán la siguiente información:
- URL(s) del recurso o recursos afectados.
- El ID de rayos de Cloudflare del recurso o recursos afectados.
- El resultado de introducir la siguiente URL en un navegador http://ejemplo.com/cdn-cgi/trace (sustituir ejemplo.com por el dominio correcto).
- Un archivo HAR desde cuando Cloudflare estaba habilitado en el sitio web.
- Un archivo HAR desde cuando Cloudflare estaba deshabilitado en el sitio web.
Descubrir y resolver errores rápidamente es fundamental para reducir los tiempos de inactividad y garantizar experiencias de usuario positivas.
Utiliza la información de esta guía para prevenir, solucionar problemas y resolver errores 520.