addy 是一个支持 HTTP/2 的跨平台 Web 服务器, 使用和配置都非常简单。Caddy 支持 HTTP/2, IPv6, Markdown, WebSockets, FastCGI, 模板等等。
具有自动 HTTPS 的快速、多平台 Web 服务器
https://github.com/caddyserver/caddy
中文文档:
https://dengxiaolong.com/caddy/zh/
Caddyfile是一个配置Caddy的文本文件。它被设计成易于打字,不易出错。
Caddyfile的第一行始终是要服务的站点的地址。
你可以定义任意多的站点;Caddy支持虚拟主机和许多其他功能!
matt.life # 你的站点地址
ext .html # 美化网址
errors error.log { # 错误日志
404 error-404.html # 自定义错误页面
}
# PHP后端
fastcgi /blog localhost:9000 php
# API负载均衡
proxy /api localhost:5001 localhost:5002
瞧!你所要做的就是运行caddy。如果你的Caddyfile在同一个文件夹中,它会被自动加载。对于生产站点,HTTPS是默认开启的!
$ caddy
Activating privacy features... done.
http://matt.life
https://matt.life
输入你的站点地址,查看它的运行情况。在线站点被重定向到HTTPS。
Caddy非常适合在家里或工作时开发网站,并服务于生产环境。赶紧尝试一下!
、Caddy2中文官方资料:【点击进入】
添加图片注释,不超过 140 字(可选)
2、关闭防火墙
sudo ufw disable
3、安装Caddy2
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
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
4、测试:创建静态页面
解析好的域名 {
root * /var/www/html
file_server
}
mkdir -p /var/www/html
<!DOCTYPE html>
<html>
<body>
<h1>奶油之家</h1>
<p>欢迎来到我们的网站</p>
</body>
</html>
5、Caddy2相关命令
# 启动Caddy2
systemctl start caddy
# 开机自启
systemctl enable caddy
# 重启Caddy2
systemctl restart caddy
# 停止Caddy2
systemctl stop caddy
# 重载配置Caddy配置文件(修改配置文件后执行)
systemctl reload caddy
# 查看Caddy2运行状态
systemctl status caddy
6、Caddy2的应用
解析好的域名 {
reverse_proxy 127.0.0.1:8080 #这里输入你想反代的服务器IP和端口
encode gzip
}
Nginx一样,Caddy中rewrite指令的主要功能是实现URL地址重写。在同一个block中,rewrite指令书写安全,因为重写规则是互斥且组合的,重复的规则,只执行第一个匹配的重写。
rewrite [<matcher>] <to>
重写任意请求到foo.html
rewrite * /foo.html
把API请求替换为query字符串a=b
rewrite /api/* ?a=b
保留API请求中原有的query字符串并添加新的query键值对a=b
rewrite /api/* ?{query}&a=b
改变任意请求,保留原有query字符串并把原请求path赋值给p参数
rewrite * /index.php?{query}&p={path}
还有如下指令也有重写的作用,但作用和效果有所不同:
*请认真填写需求信息,我们会在24小时内与您取得联系。