vue2 webpack proxy与nginx配置方式

   2023-02-07 学习力0
核心提示:目录一、项目打包后,elementUi图标显示为方框问题二、如何给项目添加ico图标三、proxy本地跨域配置四、nginx配置提示:以下是本篇文章正文内容,下面案例可供参考一、项目打包后,elementUi图标显示为方框问题解决:修改build文件=》utils.js中的ExtractText

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

一、项目打包后,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图标

例如:

vue2 webpack proxy与nginx配置方式

实现步骤:

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文件配置

vue2 webpack proxy与nginx配置方式

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访问

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

原文地址:https://blog.csdn.net/huxue12/article/details/124034664
 
标签: vue2 webpack proxy nginx
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • 一分钟搭建Vue2.0+Webpack2.0多页面项目 vue we
    想要自己一步步搭建的比较麻烦,不是很推荐,最少也要使用vue-cli,在其基础上开始搭建,今天我的主题是一分钟搭建,那么常规方法肯定不能满足的,而我用的方法也很简单,就是使用已经配置完成的demo模板,很简单命令如下:git clone git@github.com:guxuelon
    03-08
  • 关于vue2使用element UI中Descriptions组件的遍历问题详解
    关于vue2使用element UI中Descriptions组件的
    目录需求描述:问题描述:导致原因:处理办法:以下为其他思考解决方式(不推荐)总结需求描述:展示信息时其中部门区域是未知数量的,需要通过遍历进行展示。如下图举例,其中地址和备注是一一对应关系,需遵循该样式。问题描述:起初我在el-descriptions中
    03-08
  • Vue2和Vue3中如何设置404界面
    这篇文章主要讲解了“Vue2和Vue3中如何设置404界面”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue2和Vue3中如何设置404界面”吧!一.vue21.index.js在此文件中,一般存放的都是我们的路由信息,我们
    03-08
  • vue2怎么实现带有阻尼下拉加载功能 vue实现下拉
    这篇“vue2怎么实现带有阻尼下拉加载功能”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue2怎么实现带有阻尼下拉加载功能”文章吧
    03-08
  • Vue2 中的数据劫持简写示例
    Vue2 中的数据劫持简写示例
    目录正文正文我们今天要编写的项目通过需要使用 Webpack 进行编译,package.json 相关依赖如下:{"scripts": {"dev": "webpack-dev-server","build:": "webpack"},"devDependencies": {"html-webpack-plugin": "^4.5.2","
    03-08
  • 用electron 打包发布集成vue2.0项目的操作过程
    用electron 打包发布集成vue2.0项目的操作过程
    手里有个老项目是基于element admin框架下的,之前写的时候没考虑到要打包成桌面端,后期需要打包成客户端,然后就开始了一些列版本操作,看着百度了都很简单,把electron 加入到自己项目中各种不兼容,升级版本,改代码各种百度,一个国庆假期就搞了这个事情
    03-08
  • vue2.x双向数据绑定原理解析 vue数据双向绑定原理 通俗易懂
    vue2.x双向数据绑定原理解析 vue数据双向绑定原
    目录前言一、index.html文件二、vue.js文件1.proxy代理发生了什么?2.observer监听数据3.订阅者Watcher4.订阅器Dep5.编译器Compiler三、文中用到的js基础1.reg.exec2.reg.test3.RegExp.$x4.startsWith四、源码前言双向数据绑定原理主要运用了发布订阅模式来实
    03-08
  • vue2实现directive自定义指令的封装与全局注册流程
    vue2实现directive自定义指令的封装与全局注册
    目录前言一、directive自定义指令介绍二、全局注册使用流程1.准备好我们需要的自定义指令2.开始在main中导入该文件完成注册功能3.完成了注册功能开始使用总结前言我们在使用vue框架的时候,指令基本能够覆盖我们平常的工作。可难免我们根据业务需求走总有的指
    03-08
  • 用FSM一键制作逐帧动画雪碧图 Vue2 + webpack
    因为工作需要要将五六十张逐帧图拼成雪碧图,网上想找到一件制作工具半天没有找到,就自己用canvas写了一个。写成之后就再没有什么机会使用了,因此希望有人使用的时候如果遇到bug了能及时反馈给我。最近用vue2 + webpack重新构建了下,代码量挺简洁的,逻辑
    02-08
  • Vue.js系列之项目搭建(vue2.0 + vue-cli + webpack )
    Vue.js系列之项目搭建(vue2.0 + vue-cli + web
    1、安装node node.js环境(npm包管理器)cnpmnpm的淘宝镜像从node.js官网下载并安装node,安装过程很简单,一路“下一步”就可以了(傻瓜式安装)。安装完成之后,打开cmd命令行工具,输入 node -v,如果出现相应的版本号,则说明安装成功。npm包管理器,是集
    02-08
点击排行