记录一下关于nginx 如何配置vue + webpack 的打包后的静态资源

本文详细介绍如何使用Nginx部署前端项目,包括配置server、监听端口、设置静态资源路径及gzip压缩优化,实现前后端分离的项目部署。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

众所周知:当前通过npm run build 后会产生一个dist 文件夹

那么如何放到服务器上然后通过一系列的转发呢:

安装nginx  我在这里不多介绍,随便搜一篇博客安装就行。

主要介绍nginx.conf 的配置文件内容:

配置文件中可以配置多个server

server {
      gzip  on;
      gzip_min_length 1024;
      gzip_comp_level 6;
      gzip_proxied any;
      gzip_types text/plain text/css image/jpeg image/gif image/png application/octet-stream application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript application/x-font-woff;
    listen  3028;  # 配置端口号。直接访问111.111.111.111:3028 这个地址就能访问项目的 首页了
    server_name 111.111.111.111;  #这里配置当前服务器的地址111.111.111.111,地址是我随便写的,记得换成自己的。

   location / {
      root  /data/adaSpace/dist/; # 这里配置我们放置的静态资源也就是dist的路径,我把dist文件夹放在根目录下的data/adaSpace文件夹下
      index index.html;
      try_files $uri $uri/ /index.html;
    }
    location ^~ /api/ { # 一般接口都是api 开头的,所以这里配置凡是遇到api开头的转发到下面的222.222.222.222:8090地址
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-NginX-Proxy true;
            proxy_pass http://222.222.222.222:8090/; # 转发地址222.222.222.222:8090,也是我随便写的,到时候换成自己想要转发的后端接口地址加端口号,这里是nginx做跨域转发用的
    }
  }

着重说一下,一般来说,后端接口给的地址都是api 开头的,但是我们这不是,不过我自己在前端配置接口的时候,自己加了个api,那么意味着 ,我在转发的时候就要把api去掉,那怎么去掉呢,很简单。 proxy_pass http://222.222.222.222:8090/,看到8090后面的  / 了吗,加上就是去掉api,例如 我前端请求的是111.111.111.111:8080/api/a/b/c,那么在加 / 的情况下,就会转发到222.222.222.222:8090/a/b/c。若不加/ ,则请求222.222.222.222:8090/api/a/b/c

 

当前上面的配置 还有一些gizp 的优化,开启gzip ,页面简直能飞起来了,gzip_types  里面配置需要压缩的类型,加入你不知道请求的是什么类型,该怎么配置 ,那么看这里。

如图,我开始不知道.gltf 是什么类型,导致我刚开始请求需要3.7M ,然后找到这个类型,在gzip_types配置一下,压缩到900多K,神奇。还有一点如图,看是否开启了gzip 压缩  ,看Content-Encoding  是否是gzip。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值