自动 HTTPS
证书签发、续期、HTTP/2、HTTP/3 全部自动。不需要 certbot,不需要定时任务。
自动 HTTPS
证书签发、续期、HTTP/2、HTTP/3 全部自动。不需要 certbot,不需要定时任务。
一行反代
reverse_proxy localhost:9000 就够了。SNI 路由、负载均衡、WebSocket 都是内置的。
单个二进制
静态编译的 Go 程序,零运行时依赖。下载、解压、运行,三步结束。
这是最常见的生产配置,一个反向代理加自动 HTTPS:
api.example.com { encode gzip zstd reverse_proxy localhost:8080}对比一下 Nginx 做同样的事:要写 server 块、location 块,再额外跑一个 certbot 加 cron 续期。这套配置的价值就在这个差值里。
想看完整的演进过程,从 第一个 Caddyfile 开始。
Caddy 不是 Nginx 的换皮,它的目标是用最少的配置表达最多的意图。
file_server 就完事,HTTPS 自动带上。| Caddy | Nginx | |
|---|---|---|
| HTTPS 证书 | 自动签发与续期 | 需 certbot + cron |
| 配置文件 | Caddyfile(易读 DSL) | nginx.conf(指令式,易错) |
| 改完配置生效 | caddy reload,几乎无感 |
通常要 reload |
| 依赖 | 单个静态二进制 | 动态库 + 脚本生态 |
| HTTP/3 | 默认开启 | 需编译时开启 |