安装 Caddy
中文指导说明:https://dengxiaolong.com/caddy/zh/tutorial.html
1.1、下载和解压安装包
下载最新安装包:https://github.com/caddyserver/caddy/releases
上传到 /usr/local 目录,并解压
[root@nacos ~]# cd /usr/local/
[root@nacos local]# ls
bin include lib nacos share
etc jdk1.8.0_202 lib64 nacos-server-1.1.3.zip src
games jdk-8u202-linux-x64.tar.gz libexec sbin
[root@nexus local]# unzip nacos-server-1.1.3.zip
下载caddy并将其放入PATH变量
进入网站目录
运行caddy命令
完毕!打开浏览器访问http://localhost:2015。Caddy把当前目录作为默认的网站目录。
如果出现404错误,说明caddy已经正常工作,但是当前目录缺少默认主页。
配置 Caddyfile
Caddyfile是用来配置Caddy如何运行的文本文件。
Caddyfile的第一行总是表示站点的访问地址,比如:
localhost:8080
当你把这行内容保存到Caddyfile,当你启动Caddy时它将被自动发现:
- Windows
caddy
- macOS
$ caddy
- Linux
$ caddy
如果Caddyfile放在另外的目录,你需要告诉Caddy准确的位置:
- Windows
caddy -conf C:\path\to\Caddyfile
- macOS
$ caddy -conf ../path/to/Caddyfile
- Linux
$ caddy -conf ../path/to/Caddyfile
紧接网站地址的将是一系列的指令。指令是Caddy识别的关键字。比如,gzip是一个HTTP的指令。
localhost:8080
gzip
每个指令会跟随一个或者更多数量的参数:
localhost:8080
gzip
log ../access.log
有些指令需要配置很多内容,不能在一行完成。对于这些指令,你可以通过{打开一个块来设置更多参数,在最后一行你需要使用}将块关闭掉:
localhost:8080
gzip
log ../access.log
markdown /blog {
css /blog.css
js /scripts.js
}
如果指令块是空的,你必须把花括号整个删除掉。
包含空白的参数必须使用”两边包含起来。
Caddyfile也支持通过#标记注释内容:
# Comments can start a line
foobar # or go at the end
如果需要在一个Caddyfile配置多个站点,你必须将每个站点的配置通过花括号区分开来:
mysite.com {
root /www/mysite.com
}
sub.mysite.com {
root /www/sub.mysite.com
gzip
log ../access.log
}
跟随指令的左花括号必须出现在行尾,而右花括号则必须出现在单独的一行。所有指定都必须在站点的定义之内。
对于有相同配置的站点,允许一行标记多个地址:
localhost:8080, https://site.com, http://mysite.com {
...
}
除了域名,也可以指定特定的路径,或者在域名左边使用通配符:
example.com/static, *.example.com {
...
}
需要注意的是,使用站点地址的路径,将以最长的匹配前缀进行路由完成请求。如果你的基本路径是一个目录,你可以用斜杠/作为路径的结束。
网址和参数是允许使用环境变量的。它们必须通过花括号包围,格式则可以是Unix或者Windows风格的:
localhost:{$PORT}
root {%SITE_ROOT%}
每种语法都被任何平台支持。一个单独的环境变量不会因为带有空格等特殊字符而变成多个参数或者值。
Caddyfile不支持继承和脚本,你不能多次指定同一个站点地址。是的,有的时候这会导致你需要拷贝+复制一些重复的行。如果你有很多重复的行,你可以考虑使用import指令来减少重复。
https://caddyserver.com/download.html
https://blog.csdn.net/hero2040407/article/details/81015125
最后编辑:Jeebiz 更新时间:2024-01-25 09:10