• 用******户 使用了工具 Base64编解码
  • 开******发 使用了工具 MD5加密
  • 工******程 使用了工具 时间戳转换
  • 程******序 使用了工具 JSON格式化
  • 设******计 使用了工具 图片压缩
  • 产******品 使用了工具 URL编解码
  • 测******试 使用了工具 正则表达式
  • 运******维 使用了工具 密码生成器

Nginx 配置生成器

编程开发
可视化生成 Nginx 配置文件,支持静态文件、反向代理、SPA 应用、负载均衡、PHP-FPM、WebSocket 等场景,可配置 SSL、Gzip、缓存等
便民工具Nginx配置反向代理SSL负载均衡服务器
选择场景
📁静态文件托管 HTML/CSS/JS 等静态资源
🔄反向代理将请求转发到后端服务
⚛️SPA 应用Vue/React 单页应用部署
⚖️负载均衡多后端实例负载均衡
🐘PHP-FPMPHP 应用配合 Nginx
🔌WebSocketWebSocket 长连接代理
基本配置
静态文件配置
SSL/HTTPS
高级选项
nginx.conf
# Gzip 压缩
gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript image/svg+xml;
gzip_min_length 1000;

server {
    listen 80;
    server_name example.com;

    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;

    root /var/www/html;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }

    # 静态资源缓存
    location ~* \.(jpg|jpeg|png|gif|ico|css|js|woff2?|ttf|svg)$ {
        expires 30d;
        add_header Cache-Control "public, immutable";
        access_log off;
    }
}
使用场景
场景说明提示
前端部署为 Vue/React/Angular 等 SPA 应用配置 Nginx,解决刷新 404 问题选择 SPA 应用场景,自动配置 try_files
API 网关将域名请求反向代理到后端 API 服务,统一入口选择反向代理,填入后端地址
HTTPS 配置为网站启用 SSL/HTTPS,配置证书和自动重定向开启 SSL 后填入证书路径,建议启用 HSTS
多实例部署在多个后端实例间做负载均衡,提高可用性选择负载均衡场景,添加多个上游服务器
PHP 网站为 WordPress/Laravel 等 PHP 应用配置 Nginx + PHP-FPM选择 PHP-FPM 场景,配置 socket 或 TCP 地址
实时应用为 Socket.io/ws 等 WebSocket 应用配置长连接代理选择 WebSocket 场景,自动配置 upgrade 头
常见问题
SPA 应用和普通静态文件有什么区别?
SPA 应用(Vue/React)使用前端路由,所有路径都需要返回 index.html,配置 try_files $uri $uri/ /index.html。普通静态文件使用 try_files $uri $uri/ =404,找不到文件时返回 404。
反向代理和负载均衡有什么区别?
反向代理是将请求转发到单个后端服务;负载均衡是在多个后端实例间分配请求。负载均衡是反向代理的增强版,适用于需要高可用和横向扩展的场景。
SSL 证书怎么获取?
可以使用 Let's Encrypt 免费获取:安装 certbot 后执行 certbot certonly --nginx -d yourdomain.com。证书路径通常在 /etc/letsencrypt/live/yourdomain.com/ 下。
Gzip 压缩有什么效果?
Gzip 可以将文本类资源(HTML/CSS/JS/JSON)压缩 60-80%,显著减少传输体积和加载时间。建议对 1KB 以上的文本资源启用 Gzip。
proxy_set_header 各字段的作用?
Host:传递原始域名;X-Real-IP:传递客户端真实 IP;X-Forwarded-For:传递 IP 链;X-Forwarded-Proto:传递原始协议(http/https)。这些头信息让后端能获取真实的客户端信息。
WebSocket 为什么要设置 proxy_read_timeout 86400?
WebSocket 是长连接,Nginx 默认 60 秒无数据就断开。设置 86400(24 小时)可保持连接不断开。实际应用中可根据需要调整。