此笔记为旧版caddy配置,现在已经有caddy2,请查看官方教程
安装方式详见官方教程,脚本已不可用
新配置文件在 /etc/caddy/Caddyfile
centos 7安装命令
yum install yum-plugin-copr
yum copr enable @caddy/caddy
yum install caddy
启动:/etc/init.d/caddy start
停止:/etc/init.d/caddy stop
重启:/etc/init.d/caddy restart
查看状态:/etc/init.d/caddy status
查看Caddy启动日志: tail -f /tmp/caddy.log
Caddy配置文件位置:/usr/local/caddy/Caddyfile
Caddy自动申请SSL证书位置:/.caddy/acme/acme-v01.api.letsencrypt.org/sites/xxx.xxx(域名)/
caddy配置
vim /etc/caddy/Caddyfile
参考示例
www.hankhu.com { #改为自己域名
root /home/www/
gzip #启用压缩加速
tls hankhu666@qq.com #改为自己的邮箱
log /var/log/caddy/access.log
errors /var/log/caddy/error.log
fastcgi / 127.0.0.1:9000 php #传递给后端php程序
proxy /v2ray localhost:45678 { #反代给后端 如果是(镜像)网站的话直接写网站域名
websocket
header_upstream -Origin
}
}
log日志
log /var/log/caddy/caddy.log
目录访问
browse
gzip压缩
gzip
自主ssl证书
tls /path/ssl/example.com.crt /path/ssl/example.com.key #有自己证书,并知道上传的保存位置
tls hankhu666@hankhu.com #没有证书就填个邮箱 自动获取并安装Let's Encrypt免费证书,域名ip解析得提前解析完成
访问口令认证(用户hankhu,密码abc123)
basicauth / hankhu abc123
跳转功能
redir http://hankhu.com{uri}
多目录跳转
redir 307 { /123 /info/123
/abc /qwe
}
根据协议跳转
redir 301 {
if {>X-Forwarded-Proto} is http
/ https://{host}{uri}
}
#所有http 请求跳转到一个域名
文件跳转
redir /resources/images/photo.jpg /resources/images/xxx.jpg 307
自定义错误页面
errors {
404 404.html
500 /www/500.html
}
通过IP即80端口访问目录
:80 {
root /www/
gzip
browse
}