Rozdział 9 · 9.3
Strona niedostępna, 502 Bad Gateway lub błąd certyfikatu
Strona w ogóle się nie wczytuje
- Czy nazwa wskazuje na Państwa VPS?
dig +short example.compowinno zwrócić Państwa adres IP (zob. Rekord A i AAAA w Moje domeny). - Czy porty 80 i 443 są otwarte?
sudo ufw status(zob. Zapora sieciowa z ufw (lub nftables)). - Czy serwer WWW działa?
systemctl status caddylubnginx, albosudo docker compose psw/srv/diensten. - Czy coś nasłuchuje?
sudo ss -tlnp | grep -E ':(80|443) '.
502 Bad Gateway
Serwer WWW działa, ale nie otrzymuje odpowiedzi od aplikacji, która za nim stoi.
- Czy aplikacja działa?
sudo docker compose psisudo docker compose logs --tail 50 <app>. - Czy nazwa i port w pliku Caddyfile lub w
proxy_passsą poprawne? W przypadku Caddy w Dockerze jest to nazwa usługi, na przykładuptime-kuma:3001. W przypadku serwera WWW działającego poza Dockerem jest to127.0.0.1z opublikowanym portem. - Czy aplikacja wciąż się uruchamia? Niektóre aplikacje potrzebują chwili przy pierwszym uruchomieniu. Prosimy odczekać minutę.
Brak certyfikatu lub błąd certyfikatu
- Prosimy sprawdzić w logu, dlaczego uzyskanie certyfikatu się nie powiodło:
sudo docker compose logs caddy,journalctl -u caddylub komunikaty certbot. - Let's Encrypt przeprowadza weryfikację przez port 80. Jeśli port 80 jest zamknięty albo rekord AAAA wskazuje na adres, pod którym nic nie nasłuchuje, weryfikacja się nie powiedzie.
- Czy próbowali Państwo wiele razy z rzędu? W takim przypadku mógł zostać osiągnięty limit Let's Encrypt. Prosimy odczekać godzinę i najpierw usunąć przyczynę problemu.
- Certyfikat wygasa, ponieważ nie jest odnawiany? Prosimy to przetestować poleceniem
sudo certbot renew --dry-run(nginx) lub sprawdzić log Caddy.
Zbyt wiele przekierowań
Przeglądarka zgłasza, że strona zbyt wiele razy przekierowuje? Często aplikacja uważa, że działa przez http, i przekierowuje na https, po czym proxy znów przekierowuje. Prosimy sprawdzić, czy Państwa proxy przekazuje X-Forwarded-Proto (zob. Aplikacja za reverse proxy) oraz czy adres w aplikacji zaczyna się od https://.
