0.default.conf
- aaPanel 的 默认站点
- 安装后自动生成
- 默认监听 80
- 即使你不用它,也会被加载
👉 这是 80 端口冲突的 99% 元凶
2️⃣ phpfpm_status.conf
- PHP-FPM 状态页
- aaPanel 内部监控用
- 默认监听 80
- 对你部署 v2board 完全没必要对外
四、【必成功方案】我推荐你这样做(最稳)
✅ 方案 A:直接禁用这两个文件
这是最快、最安全、最不容易被 aaPanel 再改回来的方式。
cd /www/server/panel/vhost/nginx
mv 0.default.conf 0.default.conf.bak
mv phpfpm_status.conf phpfpm_status.conf.bak
👉 aaPanel 不会 include .bak 文件
如果想恢复这两个文件(最快、最稳)
你只是把文件改名成了 .bak,内容一字未动,恢复命令如下:
cd /www/server/panel/vhost/nginx
mv 0.default.conf.bak 0.default.conf
mv phpfpm_status.conf.bak phpfpm_status.conf
然后重载 Nginx:
/www/server/nginx/sbin/nginx -t
systemctl reload nginx
👉 如果 reload 不行,再用:
systemctl restart nginx
✅(推荐) 方案 B(如果你想保留):改为内网监听
如果你偏执想保留它们,也可以这样改:
0.default.conf
listen 127.0.0.1:8080;
phpfpm_status.conf
listen 127.0.0.1:8080;
⚠️ 但实话说:没必要保留
五、现在按“标准流程”来(一步不多,一步不少)
① 再次测试配置
/www/server/nginx/sbin/nginx -t
必须是:
syntax is ok
test is successful
② 启动 Nginx
systemctl start nginx
③ 确认 Nginx 没再监听 80(关键验证)
ss -lntp | grep nginx
正确结果只应该看到:
127.0.0.1:888
❌ 不能再看到 :80
六、如果你做完这一步,结果会发生什么
- ✅ Nginx 100% 启动成功
- ✅ 再也不会出现
bind() to 0.0.0.0:80 failed - ✅ Caddy 和 Nginx 彻底和平共处
- ✅ v2board 可以正常通过 Caddy 访问
七、给你一句“以后永远不会再踩坑”的总结
aaPanel 的 Nginx,只要还 include 了
0.default.conf,
就一定会有人帮你偷偷监听 80。
一、修改网站 站点的端口(核心),进入网站 Config
把 listen 80; 改成
listen 127.0.0.1:8080;
二、第四步:Caddy 标准反向代理配置(重点)
编辑 Caddyfile
vim /opt/caddy/Caddyfile
标准模板(强烈推荐)
v2.example.com {
encode gzip zstd
reverse_proxy 127.0.0.1:8080 {
header_up Host {host}
header_up X-Real-IP {remote}
header_up X-Forwarded-For {remote}
header_up X-Forwarded-Proto {scheme}
}
log {
output file /var/log/caddy/v2board.log
format json
}
}
重载 Caddy
caddy reload
📌 Caddy 会自动:
- 申请证书
- 续期
- 启用 HTTP/2 / HTTP/3
三、你应该修改成这样(直接照抄)
✅ 推荐生产环境 .env 关键修改版
APP_NAME=V2Board
APP_ENV=production
APP_KEY=base64:7cyqzaKv4pzabHFgnYP2JPiIiCR3PlugdF/zDsJ03iQ=
APP_DEBUG=false
APP_URL=https://in.aiark.cc
🔴 新增(非常重要)
TRUSTED_PROXIES=*
三、最终 .env 最小修改清单(只动这些)
❗ 必改(3 项)
- APP_ENV=local
+ APP_ENV=production
- APP_URL=http://localhost
+ APP_URL=https://in.aiark.cc
+ TRUSTED_PROXIES=*
其余 数据库 / Redis / Mail 全部 不用动,你现在的配置是正常的。
四、改完后必须执行的 3 个命令(很多人忘)
cd /www/wwwroot/in.aiark.cc
php artisan config:clear
php artisan cache:clear
php artisan route:clear
如果你启用了队列(Redis):
php artisan queue:restart