2023-11-16-【架构】debain12 将nginx1.22.1升级为caddy
在 Debian 12 上将 Nginx 1.22.1 迁移到 Caddy 是一个非常明智的选择,尤其是考虑到你目前有“科学上网”和“个人站点”的需求。Caddy 能够原生支持 HTTP/3,且自动管理 SSL 证书。
以下是完整的迁移操作流程:
第一步:停止并禁用 Nginx
在安装 Caddy 之前,必须先释放 80 和 443 端口,否则 Caddy 无法启动。
1 | |
第二步:在 Debian 12 上安装 Caddy
使用官方存储库安装,可以确保以后通过 apt upgrade 自动更新。
1 | |
第三步:配置迁移 (Nginx 语法转 Caddyfile)
这是最核心的部分。我们将你之前的 Nginx 配置逻辑转换为 Caddyfile。
Nginx 典型配置:
1 | |
对应的 Caddyfile 配置 (/etc/caddy/Caddyfile):
1 | |
第四步:检查并启动 Caddy
- 验证配置格式:
1 | |
- 启动并设置开机自启:
1 | |
第五步:针对 Debian 12 + 加拿大节点的专项优化
由于你使用的是 Debian 12 且连接的是加拿大节点,必须开启以下两项以获得最高网速:
1. 开启 BBR (Debian 12 原生支持)
1 | |
2. 放行 UDP 443 (HTTP/3 加速)
Caddy 默认开启 HTTP/3,它在处理长距离高延迟连接时比 Nginx 的 TCP 强得多。
1 | |
常见问题排查:
- 权限问题:如果 Caddy 启动后访问网页显示
403 Forbidden,是因为 Caddy 的运行用户是caddy。你需要确保静态目录可读:sudo chown -R caddy:caddy /usr/share/nginx/html - SSL 失败:如果 443 端口没开或者域名解析没生效,Caddy 无法自动申请证书。请确保你的域名
v2.blowsysun.top已指向当前的 Debian 服务器 IP。
备注
- caddy 配置路径
/etc/caddy/Caddyfile - 重启 caddy 指令
systemctl restart caddy
2023-11-16-【架构】debain12 将nginx1.22.1升级为caddy
https://zhangyingxuan.github.io/2023-11-16-【架构】debain12 将nginx1.22.1升级为caddy/