飞牛反向代理:用一个域名管好所有服务
把 NAS 上的一堆服务收敛到一个入口,配好 HTTPS 和子域名,访问清爽很多。
NAS 上跑的服务一多,端口就乱了:影视 8080、下载 8081、相册 8082……每个都要记端口号,还要单独处理 HTTPS。
反向代理就是解决这个问题的:所有服务统一走一个入口,按域名或路径分发。
反向代理是什么
简单理解:你访问 nas.example.com,反向代理根据配置把请求转发到内部某个服务的端口。
好处:
- 统一入口:只暴露一个端口(443);
- HTTPS 集中管理:证书配一次,所有服务生效;
- 子域名映射:
movie.example.com、photo.example.com各指一个服务; - 隐藏内部端口:外部看不到真实端口。
常见方案
- Nginx Proxy Manager:图形界面,配置简单,最流行;
- Caddy:配置简洁,自动 HTTPS;
- Traefik:适合 Docker 环境,自动发现容器;
- Nginx 原生:灵活但需要手写配置。
家庭用户推荐 Nginx Proxy Manager 或 Caddy,省心。
基本配置思路
以子域名方式为例:
movie.example.com → http://192.168.1.100:8080
photo.example.com → http://192.168.1.100:8082
每个服务一个子域名,反代到对应的内网地址和端口。
HTTPS 怎么配
- 证书可以放在反向代理层(推荐);
- 用 Let’s Encrypt 自动签发,需要域名解析到反代服务器;
- 内网访问时,DNS 要能解析到反代地址。
常见的坑
WebSocket 不工作:需要在反代里开启 WebSocket 支持。
大文件上传失败:请求体大小限制(client_max_body_size)要调大。
内网 DNS 解析:局域网访问域名时,要能解析到内网 IP,否则走公网绕一圈。
证书不匹配:域名和证书要对应。
安全:反代把服务暴露到公网,记得加认证(Basic Auth / 2FA)。
小结
反向代理是「从能用变成好用」的关键一步:一个域名、一个证书、一个入口。
配置不难,但要注意 WebSocket、上传大小、内网 DNS 这几个常见问题。
留言