Nginx 配置生成器

通过简单的开关构建一个完整的 nginx server 块,就在你的浏览器中实时完成。你的输入留在你的设备上。

你的域名、路径和证书位置仅在你的浏览器中用于构建配置,绝不会上传。不过,请避免将真实的私钥内容粘贴到任何工具中。

需要为你的 web 根目录设置文件权限?试试 chmod 计算器。

关于 Nginx 配置生成器

这款 nginx 配置生成器会把少量输入和开关,转换为一个完整、有效的 nginx server 块,可直接放进 sites-available。选择静态站点(root + index,配合 try_files)或反向代理(proxy_pass,带标准的 Host、X-Real-IP、X-Forwarded-For 和 X-Forwarded-Proto 头,外加可选的 WebSocket 升级行)。打开 SSL 即可监听 443、配置 ssl_certificate 和 ssl_certificate_key,并生成第二个把 HTTP 以 301 重定向到 HTTPS 的 server 块。每项只需一键即可添加 gzip、长效静态资源缓存、client_max_body_size 限制,以及一条规范的 www 转非 www 重定向。作为 nginx 配置生成器,它会保持花括号平衡、缩进整洁,然后让你复制结果或下载为 <domain>.conf。一切都在你的浏览器中运行,因此你的域名和路径留在你的设备上。

功能特性

如何使用 Nginx 配置生成器

  1. 输入你的域名和监听端口,并选择静态站点或反向代理。
  2. 填写 root 和 index,或为你的应用填写 proxy_pass 上游。
  3. 按需切换 SSL、gzip、缓存、请求体大小和 www 重定向。
  4. 在右侧查看实时的 nginx 配置,然后「复制」或「下载」该 .conf。

示例

输入

Domain: example.com
Mode: Reverse proxy
Upstream: http://127.0.0.1:3000
SSL: on

输出

server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name example.com www.example.com;

    ssl_certificate /etc/ssl/certs/example.com.crt;
    ssl_certificate_key /etc/ssl/private/example.com.key;

    location / {
        proxy_pass http://127.0.0.1:3000;
        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;
    }
}

server {
    listen 80;
    listen [::]:80;
    server_name example.com www.example.com;

    return 301 https://$host$request_uri;
}

一个监听 443 的反向代理,配上匹配的 HTTP→HTTPS 重定向块。

常见错误与故障排除

常见问题

如何在 nginx 中设置反向代理?
选择「反向代理」,在 proxy_pass 中输入你的上游(例如 http://127.0.0.1:3000),生成器就会添加一个 location / 块,带标准的 Host、X-Real-IP、X-Forwarded-For 和 X-Forwarded-Proto 头。如果你的应用使用 ws/wss,请启用 WebSocket 支持。
nginx 的 server 块放在哪里?
在 Debian 和 Ubuntu 上,将生成的文件保存为 /etc/nginx/sites-available/example.com,并软链接到 sites-enabled。在许多其他发行版上,将它放进 /etc/nginx/conf.d/example.com.conf,然后运行 nginx -t 并重载。
SSL 开关如何改变配置?
它会将主 server 切换为监听 443 ssl,添加 ssl_certificate 和 ssl_certificate_key,并生成第二个监听 80 端口的 server 块,把每个请求以 301 重定向到 https://,让访客始终落到安全站点。
这里静态站点和反向代理有什么区别?
静态模式从一个 root 目录用 index 和 try_files location 提供文件,适合 HTML、SPA 或构建产物。反向代理模式则用 proxy_pass 和代理头把请求转发到一个上游应用服务器,而不是提供文件。
我能添加 gzip 和静态资源缓存吗?
可以。gzip 开关会为 text、JSON、JavaScript、CSS、XML 和 SVG 添加一个调优的 gzip 块,缓存开关则添加一个 location,为常见资源扩展名设置 30 天的 expires 和 immutable 的 Cache-Control 头。
我的域名或配置会被发送到任何地方吗?
不会。这款 nginx 配置生成器完全在你的浏览器中运行,因此你输入的域名、路径和证书位置都在你的设备上处理,生成的文件绝不会上传。

相关工具

全部 ArrayKit 工具