Vue proxyTable build打包后访问报404

问题描述

vue proxyTable 热启动状态下能正常访问,打包后访问就包404

配置参考:https://cli.vuejs.org/config/#devserver-proxy

代理配置

$ vim vue.config.js
devServer: {
  port: port,
  open: true,
  overlay: {
    warnings: false,
    errors: true
  },
  proxy: {
    // change xxx-api/login => mock/login
    // detail: https://cli.vuejs.org/config/#devserver-proxy
    [process.env.VUE_APP_BASE_API]: {
      //target: `http://127.0.0.1:${port}/mock`,
      target: 'http://192.168.1.22:9200',
      changeOrigin: true,
      ws: true,
      pathRewrite: {
        ['^' + process.env.VUE_APP_BASE_API]: '',
      }
    },
    //'/api': {
      //target: 'http://192.168.1.22:9200',
      //changeOrigin: true,
      //ws: true,
      //pathRewrite: {
        //'^/api': '',
      //},
    //}
  },
  disableHostCheck: true,
  //after: require('./mock/mock-server.js')
},

环境配置

$ vim .env.production
# just a flag
ENV = 'production'

# base api
VUE_APP_BASE_API = '/prod-api'

API请求基地址设置

$ vim src/utils/request.js
// create an axios instance
const service = axios.create({
  baseURL: process.env.VUE_APP_BASE_API, // url = base url + request url
  // withCredentials: true, // send cookies when cross-domain requests
  timeout: 5000 // request timeout
})

解决方案

proxyTable代理打包后没用的,那个只是针对本地开发用的,需要借助Nginx完成代理

server {
    listen       80;
    server_name  gray.yezhou.me;

    location / {
        root   /home/yezhou/spring-cloud-gray-webui/dist;
        index  index.html index.htm;
    }

    location /prod-api/ {
        proxy_set_header Host $host;
        proxy_set_header x-forwarded-for $remote_addr;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_pass http://192.168.1.22:9200/;
    }
}
上一篇 Prometheus动态发现监控targets —— 基于文件的服务发现
下一篇 Vue中配置axios跨域多个proxyTable代理
目录
文章列表
1 Prometheus通过Consul动态修改Targets接入
Prometheus通过Consul动态修改Targets接入
2
CentOS下安装composer
CentOS下安装composer
3
Redis 发布订阅
Redis 发布订阅
4
Spring Boot中MongoDB的使用
Spring Boot中MongoDB的使用
5
微信支付沙箱测试采坑记录
微信支付沙箱测试采坑记录
最新评论
一位WordPress评论者
一位WordPress评论者
2月12日
您好,这是一条评论。若需要审核、编辑或删除评论,请访问仪表盘的评论界面。评论者头像来自 Gravatar。