Contents
Caddy官方升级到了2.0版,新版配置文件,不与旧版兼容。
毕竟迟早都要升级,于是参考官方文档,研究一下新版caddy设置。
虽然Caddy2官方推荐使用JSON配置文件,但这里还是在用Caddyfile。
基本用法
执行文件,直接从官方下载:
https://github.com/caddyserver/caddy/releases
配置文件名,默认为当前文件夹下面的“Caddyfile”。
启动caddy:
#前台启动
caddy run --config ./Caddyfile
#后台运行
caddy start --config ./Caddyfile
#格式化配置文件
caddy fmt -overwrite ./Caddyfile
##准备SSL证书
##生成rsa私钥,des3算法,1024位强度,ssl.key是秘钥文件名。
openssl genrsa -des3 -out ssl.key 1024
#去除密码
openssl rsa -in ssl.key -out ssl.key
#生成证书
openssl req -new -key ssl.key -out ssl.csr
配置文件示例:
http://localhost:5001 {
encode gzip
root /you/path/
}
localhost:5002 {
encode gzip
file_server browse {
root /you/file/path
}
}
caddy默认为https,需要http服务的话,需要明确地指定http。
编译caddy,添加 webdav 插件
使用官方工具 xcaddy,编译附带webdav插件。
有两个前提:
1. 本机已配置好golang环境。
2. 本机启用了go moudles。(GO111MODULE="auto" 或 GO111MODULE="on")
#克隆代码
git clone https://github.com/caddyserver/xcaddy
#进入文件夹
cd xcaddy
#安装xcaddy工具
go get -u github.com/caddyserver/xcaddy/cmd/xcaddy
#编译caddy,指定版本为v2.0.0
xcaddy build v2.0.0 --with github.com/mholt/caddy-webdav
#查看编译了什么模块,应该有http.handlers.webdav
./caddy list-modules
#把新版caddy,复制到系统路径
cp ./caddy /usr/local/bin/
#如果是windows的话
./caddy.exe list-modules
webdav配置示例
https://www.yumenaka.net {
webdav {
root /file/path
}
tls /Users/bai/Dropbox/Linux/ssl.crt /Users/bai/Dropbox/Linux/ssl.key
# 密码不能为明文,可以使用自带的工具加密:
# caddy hash-password --plaintext sdderght
basicauth {
bai JDJhJDEwJG9FRzl5eDM4ZHBmNDVFOUUwQkZTcHU1QzlmVHN6OGFrYURXdi9PQ1FGb2VzTHZmWEN1MjRH
}
}
参考文档
簡単にSSL証明書を取得可能&シンプルな設定ファイルでHTTP/3も利用できるGo製ウェブサーバー「Caddy」
服务器配置https协议,三种免费的方法
用RaspberryPi搭建Aria2+Caddy2下载站
Caddy 2 使用Caddyfile部署博客网站
用Caddy2反向代理地下城世界
reverse_proxy (Caddyfile directive) — Caddy Documentation
文章评论
作为一个轻度强迫症,请把首页图片秀一下。另外我是 Google 搜索 Kratos 主题 进入你的网站的。
@Aaron 谢谢提醒,写完某个程序就去收拾博客。