vue.js创建网站实例6

上线前,注释 src/main.js 中的如下代码:

if (process.env.NODE_ENV === 'production') {
  const { mockXHR } = require('../mock')
  mockXHR()
}

vue-admin-template打包部署后,在服务器上访问端口404错误
百度搜来的,意思是在本机开发时,自带了代理服务器,部署到服务器上后,只是静态文件,不带代理服务器,需要自己设置代理。
打包命令:

npm run build:prod

打包后的文件在dist文件夹中

vue-admin-template版本4.4
后台接口地址http://bb.xxx.cn/manage/login/login.php
解决方案:
1.修改vue.config.js

proxy: {
      [process.env.VUE_APP_BASE_API]: {
        target: 'https://aa.xxx.cn/',
        changeOrigin: true,
        pathRewrite: {
          ['^' + process.env.VUE_APP_BASE_API]: ''
        }
      }
    }

2.修改.env.production
VUE_APP_BASE_API = ‘/manage’
3.服务器使用phpstudy,开启Nginx
4phpstudy中选择设置-配置文件-vhosts.conf-对应的站点,如果是http自动跳转https的情况,直接选择https进行设置即可
在这里插入图片描述

5.在server{}中添加

location ^~ /manage/  {   
#	proxy_set_header Host $host;
#    proxy_set_header X-Real-IP $remote_addr;
#    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass http://bb.xxx.cn/manage/;
}

proxy_set_header的作用是转发请求头信息,我第一次测试的时候是不能接收到变量,复制了这三行就可以使用了,第二天接口竟然404 了,找了两天,把这3行注释了竟然又可以了,proxy_pass是转发地址,这段的意思就是把原地址manage后面的路径拼接到转发的地址后面
6.重启Nginx
----------------------------我是分割线-------------------------
7.如果服务器使用Apache,打开phpstudy的“设置-配置文件-vhosts.conf”,也可以使用editplus进行编辑,路径:X:\phpstudy_pro\Extensions\Apache2.4.39\conf\vhosts\后台url_443.conf
在后添加

<Proxy *>
Order deny,allow
Allow from all
</Proxy>

ProxyPass /manage http://127.0.0.1:8081/manage
ProxyPassReverse /manage http://127.0.0.1:8081/manage

8.新建域名为127.0.0.1,端口为8081的网站,网站目录为接口文件夹,如图:
在这里插入图片描述
9.重启Apache

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hifhf

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值