惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Hugging Face - Blog
Hugging Face - Blog
Jina AI
Jina AI
宝玉的分享
宝玉的分享
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
J
Java Code Geeks
博客园 - 【当耐特】
小众软件
小众软件
博客园 - Franky
S
SegmentFault 最新的问题
WordPress大学
WordPress大学
雷峰网
雷峰网
The Cloudflare Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
量子位
Last Week in AI
Last Week in AI
博客园_首页
月光博客
月光博客
IT之家
IT之家
阮一峰的网络日志
阮一峰的网络日志
Webroot Blog
Webroot Blog
Stack Overflow Blog
Stack Overflow Blog
腾讯CDC
云风的 BLOG
云风的 BLOG
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
W
WeLiveSecurity
Recent Commits to openclaw:main
Recent Commits to openclaw:main
D
Docker
The Last Watchdog
The Last Watchdog
有赞技术团队
有赞技术团队
Hacker News - Newest:
Hacker News - Newest: "LLM"
D
DataBreaches.Net
S
Security @ Cisco Blogs
Blog — PlanetScale
Blog — PlanetScale
GbyAI
GbyAI
TaoSecurity Blog
TaoSecurity Blog
S
Security Affairs
Y
Y Combinator Blog
O
OpenAI News
罗磊的独立博客
MongoDB | Blog
MongoDB | Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Forbes - Security
Forbes - Security
P
Palo Alto Networks Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
K
Kaspersky official blog
Cloudbric
Cloudbric

Caddy

单位目前业务都是 nginx+手动操作 acme 续期,我想给全整成用 Caddy。目前试着改了一个流量小的业务暂时没发现有什么异常。试问: Caddy2 能用于正经的生产环境吗 hosts 文件中指定域名到 127.0.0.1,https 访问本机 caddy 搭建的 web 网站 - V2EX 这个关于 naiveproxy 配置关于咋写哈 caddy 能不能跟 asp.net 组合建站? - V2EX 写了个 Caddy2 插件 geocn 用于识别中国大陆 ip 请教一个 caddy2 的反代规则 - V2EX Caddy file_server 怎么样配置多个目录? caddy 能稳定用于简单的生产环境中吗 - V2EX 一个简洁又强大的 Caddy,难用起来也会让人无语 - V2EX CaddyServer 1.0 已发布 - V2EX caddy 服务器返回一个 json - V2EX Caddy Server 已支持 QUIC 协议,又可以折腾新技术了 - V2EX 一个 Caddy Server 的简易入门手册, QwQ - V2EX Caddy Server 作者关于服务器软件是否应该免费写的一篇文章 - V2EX 再推荐一下 Caddy HTTP Server。 - V2EX caddy 一个可以直接当博客程序用的 nginx - V2EX
Caddy 很可能无法和 cdn 共用,浪费了两个人一下午之后换了 nginx 花 5 分钟搞好了 (腾讯七牛 CDN 相关) - V2EX
fy · 2021-03-18 · via Caddy

0.

使用 caddy 的原因是有自动更新 https 证书。

网络结构很简单,前面有一个域名,caddy 反向代理转给响应程序。

1.

先是使用七牛,然后发现半天过不了校验,一直在部署中,我们以为是七牛不行。

加上七牛的自定义配置选项很少,于是换腾讯云 CDN 。

然后又试,发现要么不行(403),要么重定向到了服务器内部域名(这个域名可以直接 ping 到服务器 IP)。

2.

随后,我们关闭了自动 https 重定向,终于不会暴露内部域名了。

但现在会稳定得到一个 403 。

3.

把回源请求方式改为“始终使用 HTTP”,并且写了一个小服务脚本测试。

发现了这样的问题:

Caddy 获得了 CDN 转发来的请求之后,没有转发给上游,直接返回了 403

随后就是 apt install nginx,10 分钟之后就正常工作了。

虽然不排除可能是腾讯云和七牛的问题,但我还是对 caddy 感到费解,包括要求配置项的顺序要求也是,让人一头雾水的配置错误提示也是。

PS. 附上配置和日志,以供参考:

配置:

http://xxx.q2test.cn, https://xxx.q2test.cn {
    reverse_proxy localhost:3000
}

请求失败,返回 403:

Mar 18 18:26:40 iZbp1a0zoyd681g7u3kpzsZ caddy[522704]: {"level":"error","ts":1616063200.543761,"logger":"http.log.access.log0","msg":"handled request","request":{"remote_addr":"220.194.88.217:21901","proto":"HTTP/1.1","method":"GET","host":"xxx.q2test.cn","uri":"/","headers":{"Upgrade-Insecure-Requests":["1"],"Accept":["text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"],"X-Nws-Log-Uuid":["18288152216455359445"],"X-Tencent-Ua":["Qcloud"],"X-Forwarded-Proto":["http"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36"],"Accept-Language":["zh-CN,zh;q=0.9"],"D541340abd8120abcb55ffb8fc48b3ce":["tag"],"X-Forwarded-For":["118.113.4.159"],"X-Daa-Tunnel":["hop_count=1"]}},"common_log":"220.194.88.217 - - [18/Mar/2021:18:26:40 +0800] \"GET / HTTP/1.1\" 403 0","duration":0.000036437,"size":0,"status":403,"resp_headers":{"Server":["Caddy"]}}

不通过 cdn 请求成功:

Mar 18 18:26:59 iZbp1a0zoyd681g7u3kpzsZ caddy[522704]: {"level":"info","ts":1616063219.6977851,"logger":"http.log.access.log0","msg":"handled request","request":{"remote_addr":"117.113.2.139:57097","proto":"HTTP/1.1","method":"GET","host":"xxx.q2test.cn","uri":"/","headers":{"Connection":["keep-alive"],"Upgrade-Insecure-Requests":["1"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36"],"Accept-Language":["zh-CN,zh;q=0.9"],"If-None-Match":["\"e02aa1b106d5c7c6a98def2b13005d5b84fd8dc8\""],"Cache-Control":["max-age=0"],"Accept":["text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"],"Accept-Encoding":["gzip, deflate"]}},"common_log":"117.113.2.139 - - [18/Mar/2021:18:26:59 +0800] \"GET / HTTP/1.1\" 304 0","duration":0.001917656,"size":0,"status":304,"resp_headers":{"Server":["Caddy","TornadoServer/6.1"],"Date":["Thu, 18 Mar 2021 10:26:59 GMT"],"Etag":["\"e02aa1b106d5c7c6a98def2b13005d5b84fd8dc8\""]}}