
在Web服务器领域,Nginx和Apache长期占据统治地位。现在有一款更优的选择!
如果你已经厌倦了管理复杂的 Nginx 配置文件和手动配置 SSL 证书,那Caddy 就是你的不二选择。Caddy自2014年开源以来,已经收获近65k star,受到众多开发者追捧。

简介
Caddy 是一个用 Go 语言编写的、开源的、功能强大的 Web 服务器。它的核心设计理念是简单易用
和默认安全
(Secure by Default
)。
优势
颠覆性的自动HTTPS
Caddy最革命性的特点是全球首个默认启用HTTPS的Web服务器。传统服务器需要复杂配置的SSL证书,而Caddy只需两行配置:
yourdomain.com
respond "Hello HTTPS!"
启动后,Caddy自动完成:
- 通过ACME协议(默认使用
Let’s Encrypt
)申请证书
这一特性让个人博客、中小型站点彻底告别证书管理烦恼。
极简设计与强大功能
与臃肿的传统服务器不同,Caddy采用单一静态二进制文件,无任何依赖(甚至不依赖libc),安装只需3步:
wget https://github.com/caddyserver/caddy/releases/latest/download/caddy_linux_amd64
chmod +x caddy_linux_amd64
mv caddy_linux_amd64 /usr/bin/caddy
但其能力却毫不缩水:
- 原生支持HTTP/1.1、HTTP/2及实验性HTTP/3
安全
采用Go语言编写带来内存安全优势,天然免疫
Heartbleed
、DROWN
等经典漏洞。其默认加密套件为ECDHE ECDSA + AES256-GCM-SHA384
,支持TLS 1.3,并通过TLS_FALLBACK_SCSV
防御协议降级攻击
实战
场景1:静态网站托管
假设目录结构如下:
.
├── Caddyfile
└── public
├── index.html
└── about.md
Caddyfile配置:
example.com {
root * ./public # 设置根目录
file_server # 启用文件服务
encode gzip # 开启压缩
templates # 支持模板渲染
}
运行caddy run
,访问
https://example.com
,Caddy自动处理证书和HTTPS跳转!
场景2:带认证的反向代理
保护内网应用的安全暴露:
api.example.com {
reverse_proxy localhost:8080 # 转发到本地服务
basicauth /admin/* { # 为/admin路径添加认证
admin JDJhJDE0JGEySk9janFMdHlBY2Y0aVdQZklQak9HcmwzNDZhNFg0N3V5Ny9EZkZMZHB1Nkt4ZE5BNGJt
}
}
密码通过caddy hash-password
生成,避免明文存储。
为何Caddy是未来之选?
- 开发体验革命: 告别Nginx的繁琐配置,一条命令启动服务
- 安全默认值: HTTPS即正义,Caddy将其变为现实
- 云原生友好: 单一二进制+无依赖,完美适配Docker(
docker pull caddy
) - 性能可靠: 经受数万亿请求验证,可扩展至数十万站点
真实案例: 某开发者原使用Nginx配置全站HTTPS,屡次因证书过期导致服务中断。迁移至Caddy后,运维时间减少90%。
开源地址
https://github.com/caddyserver/caddy
构建高质量的技术交流社群,欢迎从事编程开发、技术招聘HR进群,也欢迎大家分享自己公司的内推信息,相互帮助,一起进步!
文明发言,以交流技术
、职位内推
、行业探讨
为主
广告人士勿入,切勿轻信私聊,防止被骗
加我好友,拉你进群点下方的“❤”支持我们,非常感谢!