工具官网:Nginx(nginx.org)|官方文档(docs.nginx.com)
玩自托管到一定阶段都会遇到同一个问题:Uptime Kuma 占着 3001、AstrBot 占着 8080、某个面板又是 8888——服务越装越多,端口记不住,还全裸奔在公网上。解药就是 Nginx 反向代理:所有服务只在本机监听,对外只开放 80/443,按域名把请求分发到对应服务,顺手全站 HTTPS。这篇主机评测网给出从零到能用的最小路径。
反向代理解决什么
一句话:一扇门,按名字分流。访客访问 status.example.com 到达 Nginx,Nginx 转发给本机 3001 端口的 Uptime Kuma;访问 bot.example.com 转发给 8080 的 AstrBot。收益有三个:全部服务统一走 443+HTTPS(证书在 Nginx 层统一管理);后端服务可以只监听 127.0.0.1 不暴露公网(Docker 教程里讲过的 -p 127.0.0.1 写法在这里派上用场);加服务不改防火墙规则。
安装与最小配置模板
apt install -y nginx
每个服务一个配置文件,新建 /etc/nginx/conf.d/status.conf:
server {
listen 443 ssl;
server_name status.example.com;
ssl_certificate /etc/nginx/ssl/cert.pem;
ssl_certificate_key /etc/nginx/ssl/key.pem;
location / {
proxy_pass http://127.0.0.1:3001;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
改完 nginx -t 检查语法、systemctl reload nginx 生效——这两条是肌肉记忆。三个 proxy_set_header 的作用:让后端拿到真实的访问者 IP 和原始协议,Uptime Kuma 这类面板的访客统计才准确。证书部分单域名用宝塔/1Panel 一键申请,多子域直接上泛域名证书,一张 *.example.com 管所有服务。
WebSocket 服务必加的四行
Uptime Kuma、AstrBot 这类带实时推送的服务用 WebSocket,默认配置会握手失败表现为页面白屏或断连。location 里补上:
proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_read_timeout 300s;
判断技巧:服务在浏览器直接 IP:端口访问正常、挂上反代就异常,九成是缺这三行头。
安全与细节清单
一,后端绑回环:既然有了反代,Docker 服务一律 -p 127.0.0.1:3001:3001,面板类服务别裸奔公网——这是加固思路的延伸。二,上传大小:默认 client_max_body_size 只有 1M,网盘类服务要在 server 块加 client_max_body_size 512m;,否则传大文件报 413。三,HTTP 跳转:加一个 80 端口的 server 块 return 301 https://$host$request_uri;,强制全站 HTTPS。四,默认站点:没有匹配域名时 Nginx 会用第一个 server 块响应——不想要「裸 IP 访问打到某个服务」,加一个 return 444 的 default_server 兜底。
排错速查
| 症状 | 原因 | 处理 |
|---|---|---|
| 502 Bad Gateway | 后端没起/端口错 | curl 127.0.0.1:3001 本机验证后端 |
| 白屏或实时数据不出 | WebSocket 头缺失 | 补 Upgrade/Connection 三行 |
| 上传大文件 413 | client_max_body_size 默认 1M | 调大限制 |
| 访客 IP 全是 127.0.0.1 | 没传 X-Real-IP | 补三个 proxy_set_header |
| 证书不匹配警告 | server_name 与证书域名不符 | 核对泛域名/单域名证书覆盖 |
至此自托管体系最后一块拼图齐了:Docker 跑服务、acme.sh 管证书、Nginx 做统一入口、Uptime Kuma 盯可用性——四件套配齐,你这台 VPS 就是个像模像样的小型托管平台。配置语法以 Nginx 官方文档为准。











-300x200.jpg)


暂无评论内容