美文网首页
Vue部署提高页面访问速度,nginx代理

Vue部署提高页面访问速度,nginx代理

作者: MR_jw | 来源:发表于2019-12-31 16:10 被阅读0次

1、概述


在没有压缩本地js,css的文件下,部署线上环境时,访问页面加载极慢,网上搜了一下,果然有相应的解决办法,特此记录一下。还可以用cdn的方式,后面再看

2、步骤


在项目下打开命令窗口 -D : 写入devDependencies,只用于开发环境,不用于生产环境
-S :需要发布到生产环境的

npm install compression-webpack-plugin -D

项目根目录新建 vue.config.js,一定注意,和src同级

const compressionPlugin = require('compression-webpack-plugin')
module.exports={
    publicPath:"./", //线上部署添加
    
    devServer:{
        port:'8088',
        proxy:{
            '/api': {
                target: 'http://localhost:8081/api',//代理地址
                changeOrigin: true,//是否允许开启代理
                pathRewrite: {//代理地址重写
                  '^/api': ''
                }
        }
        
    }
},
configureWebpack: config=>{
    if(process.env.NODE_ENV=='production'){
        return {
            plugins:[
                new compressionPlugin({
                    test: /\.js$|\.html$|\.css/,
                    threshold:10240,
                    deleteOriginalAssets:false
                })
            ]
        }
    }
}

}

nginx.conf设置开启gzip


#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    gzip  on;   #开启gzip
    gzip_min_length 1k; #低于1kb的资源不压缩
    gzip_comp_level 3; #压缩级别【1-9】,越大压缩率越高,同时消耗cpu资源也越多,建议设置在4左右。
    gzip_types text/plain application/javascript application/x-javascript text/javascript text/xml text/css;  #需要压缩哪些响应类型的资源,多个空格隔开。不建议压缩图片,下面会讲为什么。
    gzip_disable "MSIE [1-6]\.";  #配置禁用gzip条件,支持正则。此处表示ie6及以下不启用gzip(因为ie低版本不支持)
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';
    sendfile        on;
    keepalive_timeout  65; 
    
    server {
        listen       8088;
        server_name  localhost;

        location / {
            root   /usr/share/nginx/html;
            index  index.html index.htm;
        }
        location ^~ /api/ {
          #rewrite  ^/api/(.*)$ /$1 break;
          proxy_pass http://ip地址:8081;
        }
        
        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }    

}

3、预估加载速度对比(vue-ui)


实测环境下也非常快


在这里插入图片描述

实际环境


在这里插入图片描述

相关文章

网友评论

      本文标题:Vue部署提高页面访问速度,nginx代理

      本文链接:https://www.haomeiwen.com/subject/emzboctx.html