Caddy入门使用教程

Caddy是一个用Go语言编写的可扩展服务器平台,主要管理配置并通过静态编译时插入的模块提供功能。

安装下载

直接使用预编译好的二进制包,官方提供了主流版本的二进制包。

# Github查看:
https://github.com/caddyserver/caddy/releases

解压后,把 caddy 加入到 PATH 变量中,使用 caddy 查看帮助。

caddy -v
v2.8.2 h1:81rawJP54kba4pEdl7Pg=

如下:
在这里插入图片描述

使用介绍

1.直接启动

在一个窗口执行:

caddy run

在另一个窗口执行:

curl localhost:2019/config/
null

默认情况下,Caddy的配置(“config”)是空的。

2. Hello World

上面是一个空的启动,跟任何编程语言或软件一样,我们得先打个招呼。

把下面的内容保存成一个JSON文件(vim hi.json):

{
"apps": {
"http": {
"servers": {
"example": {
"listen": [":2024"],
"routes": [
{
"handle": [{
"handler": "static_response",
"body": "你好啊, 大千世界!"
}]
}
]
}
}
}
}
}

加载这个配置:

curl localhost:2019/load \
-X POST \
-H "Content-Type: application/json" \
-d @hi.json

## 查看配置
curl localhost:2019/config/
### 返回
{"apps":{"http":{"servers":{"example":{"listen":[":2024"],"routes":[{"handle":[{"body":"你好啊, 大千世界!","handler":"static_response"}]}]}}}}}

## 访问2024
curl localhost:2024
### 返回
你好啊, 大千世界!

3. 使用Caddyfile

Caddyfile是一个内置的配置适配器,以其直观的语法而流行,允许用户以友好的方式手动编写Caddy的配置。

Caddyfile 内容:

:2015

respond "Hello, world!"

停止刚才 run 的进程,然后执行(这里与官方文档有些不一致):

caddy adapt
## 返回json,这应该是方便继续使用上一步的方式启动
2024/12/26 01:07:45.925 INFO    using adjacent Caddyfile
{"apps":{"http":{"servers":{"srv0":{"listen":[":2015"],"routes":[{"handle":[{"body":"Hello, world!","handler":"static_response"}]}]}}}}}

# 继续启动
caddy run --config Caddyfile --adapter caddyfile

在另一个窗口运行:

# curl localhost:2015
Hello, world!

错误的尝试

尽管在当前目录下存在一个 Caddyfile,但是

# caddy run
2024/12/26 01:10:20.456 INFO    using adjacent Caddyfile
Error: ambiguous config file format; please specify adapter (use --adapter)

# caddy run --adapter caddyfile
Error: cannot adapt config without config file (use --config)

# caddy run --config Caddyfile
2024/12/26 01:13:17.745 INFO    using config from file  {"file": "Caddyfile"}
Error: ambiguous config file format; please specify adapter (use --adapter)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

1024点线面

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值