解决 Vue 项目 invalid host header 问题(两种方案)

问题出现背景

做微信H5网页时,使用花生壳内网穿透进行调试时,打开网页显示:invalid host header

分析问题

这句话的意思是:无效的Host请求头;

因为在vue在调试时相当于启动了一个服务器以供我们访问(当我们build后,就可以放在我们自己的nginx等服务器)

测试环境下的webpack有一个host检查功能:webpack的devServer中

如果不配置host就无法访问,解决办法有好几种,可以去设置host,比如:

第一种解决方案

设置允许访问的域名

module.exports = {
  //...
  devServer: {
    allowedHosts: [
      'host.com', // 允许访问的域名地址,即花生壳内网穿透的地址
      '.host.com'   // .是二级域名的通配符   
    ],
  },
};

还有一种更简单的解决方案

更简单的解决方案

设置跳过host检查

// vue3 vue.config.js
module.exports = {
    // 跳过检查host
    devServer: { disableHostCheck: true }
}
// 在vue-cli版本为2.x的情况下修改webpack.dev.conf.js中的devServer对象加入disableHostCheck: true
devServer: {
  disableHostCheck: true,
}
不生效?

必须要重启!必须要重启!必须要重启!

在这里插入图片描述

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值