Caddy Web Server: Automatic HTTPS Out of the Box
Caddy · for Linux, Windows and macOS
Developer: Caddy project (opens in a new tab)
- Linux
- Windows
- macOS
The download link points to the program’s official source; the file is not hosted on this site. Link address: caddyserver.com
Link not working? Let us know
Caddy is a free, open-source web server that enables HTTPS automatically, using certificates from public ACME CAs such as Let's Encrypt or ZeroSSL. Official packages exist for Debian, Ubuntu, Fedora and Arch, plus static binaries and a Docker image.
Setting up HTTPS used to be a separate chore. Caddy builds it in: point a domain at your server, name it in the Caddy configuration, and Caddy obtains and renews the certificate on its own.
Automatic HTTPS, in practice
- Public domains get certificates from a public ACME CA. By default Caddy tries Let’s Encrypt first and falls back to ZeroSSL.
- Renewal is automatic; failed attempts are retried with backoff for up to 30 days.
- HTTP to HTTPS: once automatic HTTPS is active, Caddy redirects port 80 to 443 by default.
- Local sites such as localhost get certificates from Caddy’s own local certificate authority, whose root it installs into your trust store where permitted.
Installation options
- The Download button opens the official installation docs on caddyserver.com.
- Debian, Ubuntu and Raspbian: install the official package, which sets Caddy up as a systemd service named caddy.
- Fedora, RHEL and CentOS:
dnf copr enable @caddy/caddy, thendnf install caddy. - Arch and Manjaro:
pacman -Syu caddy. - Docker:
docker pull caddy. - Static binaries for other systems come from the download page or GitHub releases. Homebrew, Chocolatey and Scoop packages are community-maintained.
For production, the docs recommend the official package for your distribution where one exists.
Who should consider it
Caddy suits site owners on a VPS who want HTTPS without separate certificate tools, and developers who want trusted HTTPS on local projects. If you already run nginx or Apache, Certbot adds certificates to those servers instead. Compare with nginx for large, established setups.
Pros
- HTTPS certificates obtained and renewed automatically
- Trusted local HTTPS for development
- Official packages set it up as a service
Cons
- Homebrew, Chocolatey and Scoop packages are community-maintained
- Smaller ecosystem of guides than nginx or Apache
Frequently Asked Questions
Do I need Certbot with Caddy?
No. Caddy obtains and renews certificates itself from public ACME CAs such as Let's Encrypt or ZeroSSL.
Can Caddy serve HTTPS on localhost?
Yes. For local and internal hosts, Caddy uses its own local certificate authority and installs its root certificate into the local trust store where permitted.
CaddyOpen source
Download (opens in a new tab)
