Caddy: stránka s certifikátom hneď po inštalácii
Webový server, ktorý si sám získava a obnovuje HTTPS certifikáty. Inštalácia na VPS, minimálny Caddyfile a migrácia z Nginx.
Aktualizované 23. augusta 2026
Caddy robí to isté ako Nginx, ale certifikáty Let's Encrypt vydáva a obnovuje sám. Konfigurácia stránky sa zmestí do troch riadkov, takže pre prvý projekt na VDS je to najkratšia cesta k funkčnému HTTPS.
Inštalácia
Debian a Ubuntu — z oficiálneho repozitára:
apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' \
| gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' \
> /etc/apt/sources.list.d/caddy-stable.list
apt update && apt install -y caddy
AlmaLinux a CentOS Stream:
dnf install -y 'dnf-command(copr)'
dnf copr enable -y @caddy/caddy
dnf install -y caddy && systemctl enable --now caddy
Tvoja prvá stránka
Celá konfigurácia žije v /etc/caddy/Caddyfile:
example.ru {
root * /var/www/example.ru
file_server
encode gzip zstd
}
mkdir -p /var/www/example.ru
echo '<h1>Works</h1>' > /var/www/example.ru/index.html
caddy validate --config /etc/caddy/Caddyfile
systemctl reload caddy
Pár sekúnd po prvom požiadavke sa stránka otvorí na https://example.ru. Nemusíš spúšťať nič ďalšie: Caddy si certifikát stiahol sám a bude ho automaticky obnovovať.
Proxyovanie aplikácie
Ak máš na lokálnom porte službu v Node.js alebo Pythone, konfigurácia vyzerá takto:
api.example.ru {
reverse_proxy 127.0.0.1:3000
}
Caddy pridáva hlavičky X-Forwarded-For a X-Forwarded-Proto sám. Viac o schéme nájdeš v reverse proxy.
Viacero stránok sú len viaceré bloky v tom istom súbore, pozri viacero stránok na jednom stroji.
Čo si vopred skontrolovať
- A záznam domény smeruje na adresu stroja z „Prehľadu“ panela
/hosting/vds/m/<id>; - porty 80 a 443 sú otvorené vo firewalle stroja a nie sú obsadené Nginxom alebo Apachem;
- doména sa naozaj prekladá:
dig +short example.ru.
Ak nie je splnený prvý bod, vydanie certifikátu zlyhá: Let's Encrypt sa musí dostať na tvoj stroj podľa názvu domény.
Časté chyby
| Príznak | Príčina |
|---|---|
could not get certificate | Doména nesmeruje na stroj alebo je zatvorený port 80 |
address already in use | Beží Nginx alebo Apache — zastav jeden z nich |
| Stránka sa otvára len cez HTTP | V Caddyfile je pred názvom :80 alebo http:// |
| Príliš veľa pokusov o vydanie | Limity Let's Encrypt — ladíš s tls internal |
Logy: journalctl -u caddy -f.
Caddy ukladá certifikáty do
/var/lib/caddy/.local/share/caddy. Keď na karte „Prístup“ preinštaluješ systém, skopíruj tento adresár, inak sa vydávanie po preinštalovaní začne od nuly.