Capítulo 9 · 9.3
Sitio web inaccesible, 502 Bad Gateway o error de certificado
La página no carga en absoluto
- ¿El nombre apunta a su VPS?
dig +short example.comdebe devolver su dirección IP (consulte Un registro A y AAAA en Mis dominios). - ¿Están abiertos los puertos 80 y 443?
sudo ufw status(consulte Un cortafuegos con ufw (o nftables)). - ¿Está funcionando el servidor web?
systemctl status caddyonginx, osudo docker compose psen/srv/diensten. - ¿Hay algo escuchando?
sudo ss -tlnp | grep -E ':(80|443) '.
502 Bad Gateway
Su servidor web funciona, pero no recibe respuesta de la aplicación que hay detrás.
- ¿Está funcionando la aplicación?
sudo docker compose psysudo docker compose logs --tail 50 <app>. - ¿Son correctos el nombre y el puerto en el Caddyfile o en
proxy_pass? Con Caddy en Docker, se trata del nombre del servicio, comouptime-kuma:3001. Con un servidor web fuera de Docker, se trata de127.0.0.1con el puerto publicado. - ¿Se está iniciando todavía la aplicación? Algunas aplicaciones necesitan un poco de tiempo en el primer arranque. Espere un minuto.
No hay certificado o hay un error de certificado
- Consulte en el registro por qué falla la solicitud:
sudo docker compose logs caddy,journalctl -u caddyo la salida de certbot. - Let's Encrypt realiza la comprobación a través del puerto 80. Si el puerto 80 está cerrado, o si el registro AAAA apunta a una dirección en la que no escucha nada, la comprobación falla.
- ¿Lo ha intentado muchas veces seguidas? Entonces puede que haya alcanzado un límite de Let's Encrypt. Espere una hora y resuelva primero la causa.
- ¿El certificado caduca sin que se renueve? Haga una prueba con
sudo certbot renew --dry-run(nginx) o consulte el registro de Caddy.
Demasiadas redirecciones
¿El navegador indica que la página redirige demasiadas veces? A menudo la aplicación cree que funciona en http y redirige a https, tras lo cual el proxy vuelve a redirigir. Compruebe que su proxy envía X-Forwarded-Proto (consulte Una aplicación detrás de un proxy inverso) y que la dirección en la aplicación empieza por https://.
