⚙️ 勾模块 → 生成 server 配置

功能模块(勾选即写入)

固定读取该目录下的 fullchain.pem 与 privkey.pem,Let's Encrypt 证书请把目录改成 live 路径。

下载后放进 /etc/nginx/conf.d/(或 sites-available),先跑 nginx -t 测语法,再 nginx -s reload 生效。

⚙️

填好域名,右侧实时出配置。

📊 Nginx 常用指令速查

本工具生成的每条指令都在这张表里,改配置前先认全它们。

指令作用典型写法放在哪
listen监听端口,443 需加 ssllisten 443 ssl;server 块
server_name按域名匹配请求server_name example.com;server 块
root / index站点文件目录与默认文件root /var/www/html;server / location
proxy_pass把请求转发给后端服务proxy_pass http://127.0.0.1:3000;location 块
try_files找不到文件时的回退(SPA 必备)try_files $uri $uri/ /index.html;location 块
expires设置浏览器缓存时长expires 30d;静态资源 location
gzip_types指定压缩的 MIME 类型gzip_types text/css application/javascript;http / server 块
return 301永久跳转(HTTP 跳 HTTPS)return 301 https://$host$request_uri;80 端口 server

⚠️ 五个最常见的 Nginx 事故

这些错误 reload 之后,轻则样式丢失,重则整站 502。

错误后果正确做法
改完不测语法直接 reload配置有误会导致 reload 失败 / 服务起不来永远先 nginx -t,通过再 reload
证书路径写错或忘了证书链浏览器报 NET::ERR_CERT_AUTHORITY_INVALID用 fullchain.pem,不要只用 cert.pem
后端没起就配 proxy_pass访问直接 502 Bad Gateway先确认后端端口在监听(curl 127.0.0.1:端口)
静态资源不设缓存每次都回源,带宽浪费、首屏变慢给带 hash 的 js/css/图片加 expires
SPA 没配 try_files刷新内页 404try_files $uri $uri/ /index.html;

⚠️ 本工具按常见最佳实践拼接 Nginx 配置文本,不保证在你的具体环境中开箱即用。
不同发行版的 Nginx 配置目录、默认 include 规则、已加载模块(如是否内置 http_ssl_module)可能不同,Docker / 宝塔 / OneinStack 环境路径也有差异。
上线流程:备份原配置 → 放入新文件 → nginx -t 测语法 → nginx -s reload 平滑生效;出问题立即还原备份。HTTPS 还需确保证书文件真实存在且已放行 443 端口。
所有内容在你自己的浏览器本地生成,域名、服务器路径都不会上传到任何服务器。

⚙️

Nginx 配置生成器

站长工具 完全免费 🌙 支持黑夜模式 🔒 纯前端,不上传 🧩 模块勾选式 ⚠️ 配置自检

配 Nginx 最痛苦的不是写配置,而是每次都要从记忆里翻那段 proxy_set_header 写没写全、WebSocket 的 Upgrade 头怎么配、80 跳 443 怎么 return——漏掉一行真实 IP 头,后端拿到的全是 127.0.0.1;少一个分号,nginx -t 直接报错。
这个工具就解决这一件事:勾模块、填域名和后端地址,实时拼出一份规范、可直接落地的 server 配置。
它能做什么:
① 场景预设:内置静态站点、反向代理、HTTPS 全站、生产推荐四套配置,点一下就填好;
② 两种站点类型:静态文件模式输出 root / index;反向代理模式输出 location + proxy_pass,并带齐 Host / X-Real-IP / X-Forwarded-For / X-Forwarded-Proto 四个常用转发头;
③ 六个功能模块自由勾选:HTTPS(自动生成 80 跳转 + 443 ssl 两个 server 块,证书路径独立填写)、gzip 压缩(预置文本/JSON/JS/SVG/字体等常用类型)、静态资源缓存(js/css/图片/字体 expires 30d)、隐藏文件拦截(location ~ /\\. 拒绝 .git/.env 等)、SPA History(try_files 回退 index.html,治刷新 404)、WebSocket(自动补 Upgrade/Connection 头与 60s 读超时);
④ 配置自检:提示「域名没填」「HTTPS 开了但证书路径像没改」「反代地址没写协议头」「SPA 与 try_files 冲突」这类高频问题;
⑤ 导出:一键复制,或下载成 域名.conf 文件,丢进 conf.d 就能测。
必须知道的事:工具生成的是单个站点的 server 配置,不是完整 nginx.conf;HTTPS 不会帮你申请证书,证书需用 Let's Encrypt(certbot)等工具先签发;reload 前务必先 nginx -t。
整个流程都在你自己的浏览器里跑,配置内容不会上传到任何服务器。

类别站长工具 / 运维
支持模块反向代理 / HTTPS / gzip / 缓存 / 隐藏文件 / SPA / WebSocket
输出方式复制 / 下载 域名.conf
运行方式纯前端本地,不上传

核心特性

四套场景预设
静态 / 反代双模式
HTTPS 自动跳转
gzip 常用类型预置
静态资源 30 天缓存
隐藏文件拦截
SPA try_files
WebSocket 转发头
配置实时自检
一键下载 .conf
纯前端不上传

关于这个工具

生成逻辑:
① 收集表单状态:域名、站点类型(静态 / 反代)、根目录或后端地址、六个模块勾选;
② 决定 server 块结构:勾选 HTTPS 时生成两个 server——80 端口只做 return 301 跳转,443 端口承载全部业务并带 ssl 证书与推荐 SSL 参数;不勾选则只有一个 80 端口 server;
③ 按模块拼 location:gzip 段、静态资源 expires 段、隐藏文件拒绝段、SPA try_files、WebSocket 代理头,按需插入,顺序经过排布避免 location 冲突;
④ 自检:域名空值、证书路径疑似未改、proxy_pass 缺协议、WebSocket 只在反代模式有意义等,给出明确提示;
⑤ 导出:复制纯文本,或用 Blob 下载成 域名.conf。
它不做:不帮你申请/续期证书、不生成负载均衡 upstream 池、不连服务器执行 reload。任何线上改动前先备份,先 nginx -t。

怎么用

  1. 第 1 步
    点一个场景预设(新手直接用「生产推荐」),再按需微调勾选项。
  2. 第 2 步
    填站点域名;静态站填 root 目录,反向代理填后端地址(如 http://127.0.0.1:3000)。
  3. 第 3 步
    勾选需要的模块;用了 HTTPS 就把证书目录改成服务器上的真实路径。
  4. 第 4 步
    看右侧自检提示,确认没有红色警告,复制或下载 .conf 文件。
  5. 第 5 步
    上传到服务器 conf.d 目录,执行 nginx -t 通过后 nginx -s reload。

更新记录

  • v1.0 2026-10-12 工具正式上线:支持静态站点 / 反向代理两种类型与静态站点、反向代理、HTTPS 全站、生产推荐四套场景预设,可勾选 HTTPS(80 自动跳 443)/ gzip 压缩 / 静态资源缓存 / 隐藏文件拦截 / SPA History / WebSocket 六个模块实时生成 server 配置,反代自动带齐 Host / X-Real-IP / X-Forwarded-For / X-Forwarded-Proto 转发头;提供域名空值、证书路径、proxy_pass 协议等常见错误自检,支持一键复制与下载 域名.conf。附指令速查表与事故表。纯前端本地处理,不上传,适配黑夜模式。

常见问题

生成的配置文件放到哪里?
取决于你的安装方式:
· 官方源 / 编译安装:通常放到 /etc/nginx/conf.d/,文件名以 .conf 结尾(如 example.com.conf),主配置 nginx.conf 里默认有 include /etc/nginx/conf.d/*.conf;;
· Debian/U apt 安装:习惯放进 /etc/nginx/sites-available/,再软链到 sites-enabled/;
· Docker / 宝塔 / 面板:按各自后台的站点配置入口管理。
放好后执行 nginx -t 验证,再 nginx -s reload 生效。
80 端口为什么要单独写一个 server 做跳转?
勾选 HTTPS 后生成两个 server 块是标准且最稳的做法:
· 80 端口的 server 只干一件事——return 301 https://$host$request_uri;,把所有 HTTP 访问永久跳到 HTTPS,路径和参数原样保留;
· 443 端口的 server 监听 443 ssl,配置证书与全部业务 location。
不推荐用 if ($scheme = http) 加 rewrite 的老写法——Nginx 官方明确说过 "if is evil",在 location 里乱用 if 容易出现意料之外的行为。
proxy_pass 后面带不带末尾斜杠有区别吗?
有,而且非常容易踩坑:
· location /api/ { proxy_pass http://127.0.0.1:3000/; }——带斜杠,Nginx 会把 location 匹配到的前缀剥掉再转发,/api/users 到后端变成 /users;
· proxy_pass http://127.0.0.1:3000;——不带斜杠,原始路径原样转发,后端收到的是 /api/users。
本工具代理路径默认是 /,两种写法等价;如果你把代理路径改成 /api/,请根据后端是否带 /api 前缀决定末尾斜杠。
WebSocket 支持为什么要加那几行?
WebSocket 建立连接前要先发一个带 Upgrade: websocket 的 HTTP 握手请求,而 Nginx 默认不会把这些头转给后端,握手失败就退化成普通请求或直接连不上。
所以需要:
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
再配合 proxy_read_timeout 60s;(空闲连接别被过早掐断;生产常按业务调大到 3600s)。这个模块只在反向代理模式下有意义,勾选时工具会自动插到对应 location 里。
配完访问还是 502 / 证书报错怎么办?
按现象排查:
· 502 Bad Gateway:99% 是后端服务没起来或端口不对,在服务器上 curl http://127.0.0.1:你的端口 验证;其次看 SELinux 是否拦截(getsebool httpd_can_network_connect);
· 证书无效 / 证书颁发者不受信任:检查 ssl_certificate 指的是 fullchain.pem(证书链)而不是单独的 cert.pem,路径与文件权限正确;
· nginx -t 报语法错:看它提示的行号,多半是手改后漏了分号或花括号;
· 443 不通:检查云服务器安全组与防火墙是否放行 443。
任何时候都可以用备份的旧配置还原后再 reload,快速止血。

💬 留言板 0

全部留言需审核通过后展示
💬

还没有留言,来抢沙发吧!

✍️ 说点什么
0 / 500
图形验证码