赞
踩
第一种解决方案
设置允许访问的域名
- 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,
- }
不生效?
必须要重启!必须要重启!必须要重启!
在或者:
vue-cli搭建的环境,用nginx做代理服务器,访问时显示:Invalid Host header
经查是因为新版的webpack-dev-server出于安全考虑,默认检查hostname,如果hostname不是配置内的就不能访问。这样有2中方法,一种是设置跳过host检查,一种是直接host设置成你的地址。
1、关闭host检查
可以在build目录下的webpack.dev.conf.js文件,devServer下添加disableHostCheck: true,跳过检查
同样的原理,可以在package.json文件修改scripts命令:webpack-dev-server --disableHostCheck=true
2、设置成你的host,加入你的host是xxx.com,同样2中方法,修改配置文件,和script命令
在config目录下修改index.js文件的host,这个默认是localhost,可修改成 xxx.com
package.json的script语句: webpack-dev-server --host=xxx.com或者--public=xxx.com
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。