一、使用Caddy的目的
自从免费SSL证书需要三个月做续签和重新部署后,网站的维护感觉上就麻烦很多。一度不太想维护,或者因为事情忙,懒得维护网站的HTTPS。
偶尔了解到Caddy能实现自动SSL证书的续签和部署,发现这个特性完全解决自己目前的需求,就在服务器上安装了Caddy替换掉了Nginx。
二、Caddy基本信息
Caddy项目的主页:https://caddyserver.com/
Caddy项目的Github地址:https://github.com/caddyserver/caddy
项目的主页和Github上都有对项目的详细介绍,这里不多做介绍。
三、Caddy的安装部署
Caddy项目主页的使用文档里,有对Caddy安装部署的说明,重点参考其上的说明。
以Redhat和CentOS系统为例,官方的安装方式:
yum install yum-plugin-copr
yum copr enable @caddy/caddy
yum install caddy
不知道为何,在我的主机上,第二步报错,无法安装下去。于是,我采用了最原始的安装方式:
- 从Github上的release页面中下载编译好的二进制文件,根据不同的系统选择对应的二进制文件
- 上传到主机的工作文件夹中,并把二进制文件路径放入全局环境变量中,设置好配置文件路径
四、Caddy的配置
重点在于Caddy配置文件中的配置,放一下自己的网站配置文件的示例,供参考:
firstsite.com {
root * /path/to/site/folder
encode gzip
log /var/log/caddy/access.log
php_fastcgi 127.0.0.1:9000
file_server
}
secondsite.com {
encode gzip
log /var/log/caddy/access.log
reverse_proxy http://127.0.0.1:9876
file_server
}
我在配置中遇到的问题是php_fastcgi的配置,也就是配置php-fpm的问题。参考项目文档的说明,设置了php-fpm的监听IP和端口,网站运行报错;又参考其他网站的信息用Unix sock的方式设置,也没起效果;最终不知道哪里做了什么动作,重新改回IP+端口的方式,居然就好了!
四、Caddy的使用感受
最直接的感受,就是使用起来非常简单,SSL也确实自动配置了,完全不用个人操心。
至于网络上说的性能上跟Apache和Nginx有一定差距的问题,小网站没啥太大并发,现在无体感。
- 2025年01月26日,文章初稿