固定读取该目录下的 fullchain.pem 与 privkey.pem,Let's Encrypt 证书请把目录改成 live 路径。
下载后放进 /etc/nginx/conf.d/(或 sites-available),先跑 nginx -t 测语法,再 nginx -s reload 生效。
填好域名,右侧实时出配置。
本工具生成的每条指令都在这张表里,改配置前先认全它们。
| 指令 | 作用 | 典型写法 | 放在哪 |
|---|---|---|---|
| listen | 监听端口,443 需加 ssl | listen 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 |
这些错误 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 | 刷新内页 404 | try_files $uri $uri/ /index.html; |
⚠️ 本工具按常见最佳实践拼接 Nginx 配置文本,不保证在你的具体环境中开箱即用。
不同发行版的 Nginx 配置目录、默认 include 规则、已加载模块(如是否内置 http_ssl_module)可能不同,Docker / 宝塔 / OneinStack 环境路径也有差异。
上线流程:备份原配置 → 放入新文件 → nginx -t 测语法 → nginx -s reload 平滑生效;出问题立即还原备份。HTTPS 还需确保证书文件真实存在且已放行 443 端口。
所有内容在你自己的浏览器本地生成,域名、服务器路径都不会上传到任何服务器。
配 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。
整个流程都在你自己的浏览器里跑,配置内容不会上传到任何服务器。
生成逻辑:
① 收集表单状态:域名、站点类型(静态 / 反代)、根目录或后端地址、六个模块勾选;
② 决定 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。
nginx -t 通过后 nginx -s reload。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;;/etc/nginx/sites-available/,再软链到 sites-enabled/;nginx -t 验证,再 nginx -s reload 生效。return 301 https://$host$request_uri;,把所有 HTTP 访问永久跳到 HTTPS,路径和参数原样保留;443 ssl,配置证书与全部业务 location。if ($scheme = http) 加 rewrite 的老写法——Nginx 官方明确说过 "if is evil",在 location 里乱用 if 容易出现意料之外的行为。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 前缀决定末尾斜杠。Upgrade: websocket 的 HTTP 握手请求,而 Nginx 默认不会把这些头转给后端,握手失败就退化成普通请求或直接连不上。proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";proxy_read_timeout 60s;(空闲连接别被过早掐断;生产常按业务调大到 3600s)。这个模块只在反向代理模式下有意义,勾选时工具会自动插到对应 location 里。curl http://127.0.0.1:你的端口 验证;其次看 SELinux 是否拦截(getsebool httpd_can_network_connect);ssl_certificate 指的是 fullchain.pem(证书链)而不是单独的 cert.pem,路径与文件权限正确;审核通过后就会展示在留言板上,稍安勿躁~
还没有留言,来抢沙发吧!