nginx-proxy-manager-zh 完整部署指南:中文界面反向代理 + 免费 SSL 证书管理,5 分钟跑起来
【免费下载链接】nginx-proxy-manager-zh基于nginx-proxy-manager翻译的中文版本项目地址: https://gitcode.com/gh_mirrors/ng/nginx-proxy-manager-zh
nginx-proxy-manager-zh 是一款中文界面的反向代理管理工具:表单里填好域名,它自动生成 Nginx 配置、申请并续期免费 SSL 证书,全程不用碰 conf 文件。适合没学过 Nginx、想给自托管服务上 HTTPS 的用户。
它到底替你干了哪些脏活
你有没有为一条反向代理规则写过半页 conf,改完还得nginx -t再 reload?有了它,你只填"域名 → 目标地址:端口",剩下的都归它:
- 手改
server块:变成表单 + 保存,配置由后端按 backend/templates/ 里的模板渲染,改完自动热加载,不重启; - 每 90 天惦记证书过期:Let's Encrypt 证书自动续期,到期前邮件提醒;
- 一个个写
allow/deny挡外人:先建一个"访问列表",再把它挂到任意主机上,一处配置处处生效。
你会发现,仪表盘里每台主机在线还是离线、用的是什么证书,一眼看全,不用翻文件核对。
划重点:它的价值不是"更漂亮的 Nginx",而是把"写配置 + 热加载 + 记得续证书"这三件烦心事,变成填一张表单。
Docker 一键部署命令:5 分钟装好中文反向代理
先跑起来再说。准备一台装好 Docker 的机器,写一份最小 compose 文件:
services: app: image: 'chishin/nginx-proxy-manager-zh:release' restart: unless-stopped ports: - '80:80' - '443:443' - '81:81' volumes: - ./data:/data - ./letsencrypt:/etc/letsencryptdocker compose up -d两个关键配置项划下重点:
- 三个端口:80/443 给被代理的业务用,81 是你进管理界面用的。80/443 必须对公网放行,否则证书域名验证会失败;
- 两个目录:
data存 SQLite 数据库和生成的配置,letsencrypt存证书。这两个目录备份了,容器炸了都不怕。
首次启动要初始化数据库、建管理员,稍等一两分钟。然后浏览器打开http://服务器IP:81,默认账号admin@example.com、密码changeme,登录后强制你改密码和邮箱——邮箱用来接收证书到期提醒,填真的。
划重点:部署就是 3 个端口 + 2 个挂载,容器随便删,目录别丢。
三个真实场景:照着抄作业就行
内网服务挂上域名:代理主机
你要什么:192.168.1.100:8096上跑着 Jellyfin,想用jellyfin.home.example.com直接访问。
怎么配:进"主机 → 代理主机 → 添加",填三个字段——域名、协议(目标服务监听什么就填什么,通常 http)、转发地址和端口,保存。
得到什么:列表里多一行,状态显示 Online,域名就能打开了。全程没写一行 Nginx 配置。
裸域名 301 到 www:重定向主机
你要什么:访问home.example.com时自动跳到www.home.example.com。
怎么配:"重定向主机 → 添加",填源域名、目标地址,选跳转码(长期迁移用 301,临时用 302),保存。
得到什么:两个域名并存,老域名永久指向新域名,301 规则不用再手动敲。
退役域名统一显示 404:404 主机
你要什么:旧服务下线了,域名别悬空挂着等被人扫到。
怎么配:"404 主机 → 添加",填上域名,保存。
得到什么:访问该域名直接看到统一的"未找到"页面,而且仪表盘单独计数,方便你定期清理。
划重点:转发、跳转、拦截,这三类主机覆盖了日常 90% 的需求,每个两分钟填完表单就生效。
从能用到好用:三个进阶收益点
Let's Encrypt 免费证书怎么开自动续期
建代理主机时切到 SSL 标签,选 Let's Encrypt,勾上"强制 SSL"(HTTP 访问自动跳 HTTPS),填好邮箱保存。证书自动申请、到期自动续,一个续期脚本都不用写。所有证书的颁发方和到期时间集中在 SSL 证书页面,过期前会有邮件提醒。
谁能访问怎么做成白名单
"访问列表 → 添加",类型选白名单,把你的宽带出口 IP 或办公室网段加进去;再回到代理主机,把该列表选上。以后这台服务只有你能看;想再加一层,还能填用户名密码,浏览器访问时弹基础认证。
响应更快:自定义 Nginx 指令怎么加
想自己动 Nginx 参数,去主机的"高级"标签直接贴指令,比如给慢后端放宽代理超时:
proxy_connect_timeout 60s; proxy_send_timeout 60s; proxy_read_timeout 60s;保存后这段配置会注入生成的 conf 并立即生效,不用碰任何文件。
划重点:自动续期、访问白名单、参数微调——这三件"想用又不知去哪配"的事,界面里全有入口。
翻车急救包:高频问题三条
现象:域名能打开,但返回 502 或 504。多半是:目标服务没在监听,或者转发地址、端口填错。一条命令定位:docker exec -it 容器名 curl -I http://转发地址:转发端口
现象:Let's Encrypt 证书申请失败,提示验证没通过。多半是:域名没解析到这台服务器,或 80/443 被防火墙拦了。一条命令定位:docker logs 容器名 | grep -i letsencrypt
现象:访问域名看到的是默认页面,不是你的站点。多半是:主机被禁用了,或者配的域名和你访问的输入不一致。一条命令定位:docker exec -it 容器名 ls /etc/nginx/conf.d/include/(主机在线才会生成对应的 conf 文件)
还有别的怪问题,可以去仓库的 docs/src/faq/ 翻一翻官方 FAQ。
划重点:八成故障是"目标没跑"或"域名没指过来",先跑命令确认这两件事,再回界面查。
写在最后
不想碰 conf 文件,又想要免费证书、自动续期、访问白名单,它就够了。
中文界面开箱即用,所有配置都在浏览器里点完。
现在就去把它架起来,5 分钟后你的第一个 HTTPS 域名就能跑通。
【免费下载链接】nginx-proxy-manager-zh基于nginx-proxy-manager翻译的中文版本项目地址: https://gitcode.com/gh_mirrors/ng/nginx-proxy-manager-zh
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考