vue2 webpack proxy与nginx配置方式

 更新时间:2022年10月24日 10:45:54   作者:空中有朵雨做的云  
这篇文章主要介绍了vue2 webpack proxy与nginx配置方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

提示:以下是本篇文章正文内容,下面案例可供参考

一、项目打包后,elementUi图标显示为方框问题

解决:

修改build文件=》utils.js中的ExtractTextPlugin,加入 publicPath: ‘…/…/’,

if (options.extract) {
      return ExtractTextPlugin.extract({
        use: loaders,
        fallback: 'vue-style-loader',
        publicPath: '../../', //elementui图标显示不全问题
      })
    } else {
      return ['vue-style-loader'].concat(loaders)
    }

二、如何给项目添加ico图标

例如:

实现步骤:

1. 把icon图片放在项目的根目录下

2. build文件下的webpack.dev.conf.js 和 webpack.prod.conf.js 文件内搜索HtmlWebpackPlugin;并加入favicon: './favicon.ico’代码

new HtmlWebpackPlugin({
      filename: 'index.html',
      template: 'index.html',
      inject: true,
      favicon: './favicon.ico'
    }),

三、proxy本地跨域配置

本人项目使用的是vue2+webpack技术栈,所以跨域是基于此技术栈之上配置。

// config文件=》index.js中proxyTable
proxyTable: {
      '/api': {
        target: 'http://www.baidu.com:8080', // 此处为接口的真实地址
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      },
    },

之前想区分开发和生产环境的接口,所以在target使用了process.env.ROOT_URL,结果发现本地代理失败了,后面才知道在此文件内获取不到process;即使这样设置也是多余的,因为在项目打包后本地代理是没有失效的

接口封装文件相关配置,或者也可以在config文件=》的dev.env.js文件内添加BASE_API: ‘/api’,这里的baseURL配置process.env.BASE_API

var instance = axios.create({
  baseURL: '/api', //接口统一域名
  withCredentials: false,
  timeout: 5000, //设置超时
  headers: {
    'Content-Type': 'application/json;charset=UTF-8;',
  }
})

四、nginx配置

1. nginx=>conf=>nginx.conf文件配置

server {
        listen       8088; //端口号默认80,若是端口冲突,可以更改端口号
        server_name  localhost; //

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }
        
        // 此处的 /api要和上面的接口封装处的baseURL一致,代理才有效果,之前被这个坑了好久
        location /api {
           rewrite ^/api/(.*) /$1 break;
           proxy_pass http://www.baidu.com:8080; // 此处为接口的真实地址
        }

2. 双击nginx文件夹下nginx.exe启动端服务

3. 浏览器输入 localhost:8088访问

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 记一次Vue中$route序列号报错

    记一次Vue中$route序列号报错

    本文主要介绍了记一次Vue中$route序列号报错,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • 详解在Vue中通过自定义指令获取dom元素

    详解在Vue中通过自定义指令获取dom元素

    本篇文章主要介绍了详解在Vue中通过自定义指令获取dom元素 ,具有一定的参考价值,有兴趣的可以了解一下。
    2017-03-03
  • 一文带你了解Vue3中toRef和toRefs的用法

    一文带你了解Vue3中toRef和toRefs的用法

    Vue3中toRef、toRefs都是与响应式数据相关的,本文主要来给大家讲解一下Vue3中的toRef和toRefs的使用,感兴趣的朋友跟随小编一起看看吧
    2023-01-01
  • Vue3 Watch踩坑实战之watch监听无效

    Vue3 Watch踩坑实战之watch监听无效

    Vue.js中的watch选项用于监听Vue实例上某个特定的数据变化,下面这篇文章主要给大家介绍了关于Vue3 Watch踩坑实战之watch监听无效的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • vue实现PC端录音功能的实例代码

    vue实现PC端录音功能的实例代码

    这篇文章主要介绍了vue实现PC端录音功能的实例代码,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-06-06
  • Vue+Koa2+mongoose写一个像素绘板的实现方法

    Vue+Koa2+mongoose写一个像素绘板的实现方法

    这篇文章主要介绍了Vue+Koa2+mongoose写一个像素绘板的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Vue reactive函数实现流程详解

    Vue reactive函数实现流程详解

    一个基本类型的数据,想要变成响应式数据,那么需要通过ref函数包裹,而如果是一个对象的话,那么需要使用reactive函数,这篇文章主要介绍了Vue reactive函数
    2023-01-01
  • 在vue 中使用 less的教程详解

    在vue 中使用 less的教程详解

    这篇文章主要介绍了在vue 中使用 less 的相关知识,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • vue组件(全局,局部,动态加载组件)

    vue组件(全局,局部,动态加载组件)

    组件是Vue.js最强大的功能之一。组件可以扩展HTML元素,封装可重用的代码。这篇文章主要介绍了vue组件(全局,局部,动态加载组件),需要的朋友可以参考下
    2018-09-09
  • vue中Axios添加拦截器刷新token的实现方法

    vue中Axios添加拦截器刷新token的实现方法

    Axios是一款网络前端请求框架,本文主要介绍了vue中Axios添加拦截器刷新token的实现方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02

最新评论