如何让webpack-dev-server在任何子域中提供相同的服务?

时间:2018-06-06 18:40:36

标签: webpack webpack-dev-server

我的SPA应用程序根据子域生成AJAX请求。它基本上从window.location.hostname中提取当前子域并将其设置为全局变量。

目前,当我尝试通过子域访问时,我得到的是:

enter image description here

我需要什么?我需要webpack dev服务器来处理任何subdomain.localhost:8080,以使其正常加载内容,就好像没有子域一样。基本上忽略子域并提供相同的服务,因为在我的情况下,应该由前端应用程序本身来处理。

我已尝试过:我尝试设置proxyproxyTablesallowedHosts,但我没有成功。

顺便说一句,当我在express.js服务器中提供构建的文件时,它的行为完全符合我的需要:提供相同的静态内容,无论哪个是子域。

系统规格:Chrome和MacOS Sierra。

另外,我最近使用了vue-cli webpack模板。

2 个答案:

答案 0 :(得分:1)

默认情况下,您的网络包绑定在主机名上,并且只会以该名称回答。

要删除该限制,请使用命令行参数host,如下所示:--host 0.0.0.0

同时修改主机文件以添加指向127.0.0.1的所有已使用子域:

127.0.0.1 sub.localhost
127.0.0.1 other.localhost

通常您的主机文件位于:

  • /etc/hosts用于posix系统,如unix,mac和linux;
  • C:\Windows\System32\drivers\etc\hosts for win32 systems;

答案 1 :(得分:0)

尝试使用

disableHostCheck: true,