前端如何修改nginx配置(在VSCode)

 更新时间:2025年09月19日 09:18:06   作者:诸葛亮的芭蕉扇  
前端开发中Nginx是最常用的 Web 服务器和反向代理工具,主要用于部署静态资源、处理跨域、配置缓存策略等,这篇文章主要介绍了前端如何修改nginx配置的相关资料,需要的朋友可以参考下

本文分享的是前端如何修改nginx配置来调试测试环境

Nginx(发音为 “engine X”)是一款高性能的 开源 Web 服务器,同时也可作为 反向代理服务器、负载均衡器、HTTP 缓存邮件代理服务器。由于其轻量级、高并发处理能力和低资源消耗,Nginx 被广泛用于现代互联网架构中,尤其适合高流量网站和分布式系统。

Nginx 的主要作用

Web 服务器(静态资源服务)

Nginx 最初设计用于高效处理静态文件(如 HTML、CSS、JS、图片等),相比传统服务器(如 Apache):

典型应用:

  • 更低的资源消耗:采用事件驱动(Event-Driven)架构,单线程可处理数千并发连接。
  • 更快的响应速度:优化了静态文件的传输效率,适合 CDN 和内容分发。
  • 托管静态网站(如博客、官网)。
  • 作为前端资源服务器(配合 React/Vue 等 SPA 应用)。

反向代理(Reverse Proxy)

Nginx 可以作为反向代理,接收客户端请求并转发给后端服务器(如 Tomcat、Node.js、PHP-FPM),再返回响应给用户。
核心优势:

典型配置:

server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://backend_server;  # 转发到后端
        proxy_set_header Host $host;
    }
}
  • 隐藏后端服务器:保护真实服务器 IP,提升安全性。
  • 负载均衡:将流量分发到多个后端服务器(见下文)。
  • 缓存加速:缓存动态内容,减少后端压力。

负载均衡(Load Balancing)

Nginx 可以将流量均匀分配到多个后端服务器,提高系统的可用性和扩展性。
支持的均衡策略:

典型配置:

upstream backend {
    server 192.168.1.1 weight=3;  # 权重 3
    server 192.168.1.2;
    server 192.168.1.3 backup;    # 备用服务器
}

server {
    location / {
        proxy_pass http://backend;
    }
}
  • 轮询(Round Robin):默认方式,按顺序分配请求。
  • 加权轮询(Weighted Round Robin):给性能更强的服务器更多流量。
  • IP 哈希(IP Hash):同一用户始终访问同一服务器(适合 Session 保持)。
  • 最少连接(Least Connections):优先分配给当前连接数最少的服务器。

HTTP 缓存(加速动态内容)

Nginx 可以缓存后端动态生成的页面(如 API 响应),减少重复计算和数据库查询。
适用场景:

典型配置:

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m inactive=60m;

server {
    location / {
        proxy_cache my_cache;
        proxy_pass http://backend;
        proxy_cache_valid 200 302 10m;  # 缓存 200/302 响应 10 分钟
    }
}
  • 高并发读多写少的场景(如新闻网站、商品详情页)。
  • 缓解后端服务器压力。

SSL/TLS 终止(HTTPS 加速)

Nginx 可以处理 HTTPS 加密/解密,减轻后端服务器的计算负担:

典型配置:

server {
    listen 443 ssl;
    server_name example.com;

    ssl_certificate /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;

    location / {
        proxy_pass http://backend;
    }
}
  • 统一管理证书(如 Let’s Encrypt)。
  • 支持 HTTP/2,提升页面加载速度。

动静分离

将动态请求(如 API)和静态资源(如图片、CSS)分开处理:

典型配置:

server {
    location /static/ {
        alias /var/www/static/;  # 直接返回静态文件
    }

    location /api/ {
        proxy_pass http://backend;  # 转发 API 请求
    }
}
  • 静态资源由 Nginx 直接返回,动态请求转发给后端(如 Java/Python)。

其他用途

  • 邮件代理(IMAP/POP3/SMTP)。
  • WebSocket 代理(支持实时通信应用)。
  • 访问控制(IP 黑白名单、限速)。

如何在VSCode中修改Nginx配置,步骤如下:

找到 Nginx 配置文件

Nginx 的配置文件通常位于:

如何快速定位 Nginx 配置文件?

  • Linux/macOS/etc/nginx/nginx.conf(主配置)或 /etc/nginx/conf.d/(子配置)
  • WindowsC:\nginx\conf\nginx.conf(默认安装路径)
  • 在终端运行:

    nginx -t
    

    它会显示 Nginx 加载的配置文件路径,例如:

    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
    

在 VSCode 中打开 Nginx 配置文件

使用 VSCode 远程开发(推荐):

  • 如果 Nginx 运行在远程服务器(如 Linux),可以:

    1. 安装 Remote - SSH 插件。

      vscode通过ctrl + shift + x打开右侧的扩展,输入Remote - SSH进行安装。安装完成后要重启vscode。安装成功后,右侧会有一个类似电脑的图标。

    2. 点击电脑图标,如下图所示

    3. 点击配置(齿轮)图标,添加服务

    4. 在打开的config文件中,输入目标服务的配置信息

    5. 配置完成后,就可以在SSH文件夹下看到31服务器和45服务器,选择其中的一个服务,在新窗口建立连接,选择Linus,输入密码后,选择打开文件夹,在输入框输入想要访问的文件夹即可。例如:打开etc文件夹

    6. 打开后,找到nginx文件夹,打开nginx.conf文件,此文件中就是对应项目的nginx配置信息。

    7. 完成配置修改后,执行的指令如下:

      1. 检查配置文件是否有语法错误: 在重新加载 Nginx 配置之前,最好检查配置文件是否有语法错误。使用以下命令来检查:

        sudo nginx -t
        

        如果一切正常,会显示类似以下的消息:

        Copy Codenginx: configuration file /etc/nginx/nginx.conf test is successful
        
      2. 重新加载 Nginx 配置: 如果配置文件语法没有问题,可以使用以下命令来重新加载 Nginx 配置:

        sudo systemctl reload nginx
        

        或者使用:

        sudo nginx -s reload
        

        这样,Nginx 会应用对 nginx.conf 文件所做的修改,而无需重启整个 Nginx 服务。

修改 Nginx 配置

Nginx 配置采用 模块化结构,常见修改场景:

(1)配置静态网站

server {
    listen 80;                      # 监听 80 端口(HTTP)
    server_name example.com;        # 域名

    location / {
        root /var/www/html;         # 网站根目录
        index index.html;           # 默认首页
    }
}

(2)配置反向代理(如转发到 Node.js/React/Vue)

server {
    listen 80;
    server_name api.example.com;

    location / {
        proxy_pass http://localhost:3000;  # 转发到本地的 Node.js 服务
        proxy_set_header Host $host;
    }
}

(3)配置 HTTPS(SSL 证书)

server {
    listen 443 ssl;
    server_name example.com;

    ssl_certificate /etc/ssl/certs/example.com.crt;     # 证书路径
    ssl_certificate_key /etc/ssl/private/example.com.key;

    location / {
        root /var/www/html;
        index index.html;
    }
}

(4)配置负载均衡

upstream backend {
    server 192.168.1.1:3000;  # 后端服务器 1
    server 192.168.1.2:3000;  # 后端服务器 2
}

server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://backend;  # 请求转发到 upstream
        try_files $uri $uri/ /index.html; # 用于智能匹配请求资源的重要规则
    }
}

总结 

到此这篇关于前端如何修改nginx配置的文章就介绍到这了,更多相关前端修改nginx配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • nginx处理http请求实例详解

    nginx处理http请求实例详解

    这篇文章主要介绍了nginx处理http请求实例详解的相关资料,需要的朋友可以参考下
    2017-06-06
  • 解读nginx中limit配置参数

    解读nginx中limit配置参数

    这篇文章主要介绍了nginx中limit配置参数的详细作用,希望我们整理的内容能帮助到你,一起学习下吧。
    2018-01-01
  • Nginx使用Lua模块实现WAF的原理解析

    Nginx使用Lua模块实现WAF的原理解析

    waf是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品,本文重点给大家介绍Nginx使用Lua模块实现WAF的原理,需要的朋友参考下吧
    2021-09-09
  • Linux安装Nginx步骤详解

    Linux安装Nginx步骤详解

    这篇文章主要介绍了Linux安装Nginx步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • 详解阿里云LINUX服务器配置HTTPS(NGINX)

    详解阿里云LINUX服务器配置HTTPS(NGINX)

    本篇文章主要介绍了阿里云LINUX服务器配置HTTPS(NGINX) ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • nginx优化的六点方法

    nginx优化的六点方法

    这篇文章主要介绍了nginx优化的六点方法,有对nginx优化不太熟悉的同学可以参考下
    2021-01-01
  • Nginx安装及配置详细分析

    Nginx安装及配置详细分析

    这篇文章主要介绍了Nginx在各种系统和环境中的安装及配置详细分析。
    2017-11-11
  • Nginx日志打印自定义请求头的实战

    Nginx日志打印自定义请求头的实战

    nginx的日志可以打印很多内容,但是有时候自定义的请求头该怎么打印呢,本文就来介绍一下,感兴趣的可以了解一下
    2024-12-12
  • nginx 负载均衡配置及如何解决重复登录问题

    nginx 负载均衡配置及如何解决重复登录问题

    文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx 负载均衡配置及如何解决重复登录问题感兴趣的朋友一起看看吧
    2025-07-07
  • Nginx反向代理location和proxy_pass配置规则详细总结

    Nginx反向代理location和proxy_pass配置规则详细总结

    nginx代理访问很好用,但是好多人不清楚location和proxy_pass组合在一起使用时访问的url被代理的url真实地址是什么,下面这篇文章主要给大家介绍了关于Nginx反向代理location和proxy_pass配置规则的相关资料,需要的朋友可以参考下
    2022-09-09

最新评论