一、安装
官网文章:https://caddyserver.com/docs/install
我们的服务器是Ubuntu,在官网上得到下述5条命令,复制粘贴后即可安装成功:
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
PS:在实际的安装里,上述5行代码需要逐行拷贝了去执行,才能安装成功。
二、运行
如果80或443端口被占用,导致Caddy无法启动,请移步到这篇文章:Caddy进阶:因为Nginx占用了80和443端口导致Caddy无法启动
caddy只是一个命令行,安装好了caddy就是说linux能支持caddy这个命令了。
首次安装后,caddy不会自动启动。
4、caddy最好的方式,进阶,就是在你的某个目录下,放置一个名为Caddyfile的文件(没有扩展名),在文件里编排好内容,然后执行caddy run即可启动;
在Linux服务器上,自己规划的目录里,比如新建/home/public/software/caddy目录,用vi编辑器,新建一个文件
vi Caddyfile
内容如下:(tls后面的参数是用于申请证书的自己的电子邮件。)
www.abc123.com {
reverse_proxy http://cloudtest.vicp.net:32684
tls test@qq.com
}
然后让caddy重载配置文件:
sudo caddy reload
在保存Caddyfile的目录里,启动caddy
sudo caddy start
三、常用命令
1、caddy run和caddy start
caddy的启动,有两个命令,一个是caddy run,一个是caddy start,两者的区别就是后者是守护进程的方式启动。
2、自动修复Caddyfile
caddy fmt –overwrite
有一次修改了Caddyfile,保存后执行caddy reload,报错,说文档的第11行有语法错误。用肉眼怎么也看不出错误来。于是按照报错的提示,执行了上述命令。错误就被自动改正了。
四、为什么说取代宝塔和Nginx?
对于Linux的菜鸟来说,很多服务器上安装宝塔,只是为了安装和使用Nginx。因为用宝塔,可以在web界面上管理nginx,配置一堆的网站和维护SSL证书。
Caddy对反向代理的配置极其简单,如上所述;
Caddy最大的厉害之处,是自动向Let’s Encrypt申请证书、续签证书,自动配置全站https。
另外Caddy在反向代理WebSocket的长连接的配置也是内置的、极其简单。
一句话:Caddy让SSL和反向代理变得极其简单了。