简介
caddy 是使用 go 语言实现的一个高性能的类似于 nginx 的 HTTP 和反向代理服务器。支持自动申请 https 证书,配置也相当的精简
官网:https://caddyserver.com/
代理服务器配置
caddy 的文档主要都是英文的
https://caddyserver.com/docs/quick-starts/reverse-proxy
https://caddyserver.com/docs/caddyfile/directives/reverse_proxy
第二个链接是详细的配置规则,文档很多,需要耐心下来慢慢的看才能很好的理解,我第一遍看的很快,完全没懂。吃完午饭之后,拿起手机慢悠悠的,一个句子一个句子的看,这才真的理解
caddy 的配置文件叫 Caddyfile
默认的 Header 都已经设置了 X-Forwarded-For X-Forwarded-Proto X-Forwarded-Host
1 | # 代理本地的HTTP服务, eg: "https://example.com" -> localhost:4000 |
修改完之后,在 Caddyfile 所在目录运行caddy reload
就可以重新加载配置了
反向代理增加 Basic Auth
第一步需要 hash 一下密码,caddy 不希望我们写明文密码,比如我们的密码是 123456
1 | $ caddy hash-password --plaintext 123456 |
修改配置文件 Caddyfile
后面我们请求的时候,就会需要先输入用户名密码才能访问服务
1 | http://example.com:8080 { |
安装
DEB 安装
1 | wget https://github.com/caddyserver/caddy/releases/download/v2.6.4/caddy_2.6.4_linux_amd64.deb |