3

我正在我的 vagrant laravel/homestead 盒子上开发一个节点项目。一切正常,当我转到我的主机定义时,我可以访问该项目/etc/hosts

192.168.10.10 project

但是,我正在尝试使用 webpack 构建和观看我的项目,所以我安装了 webpack-dev-server 并且可以运行它:

http://localhost:8080/
webpack result is served from /
content is served from /home/vagrant/Workspace/Kanban
404s will fallback to /index.html
[...]
webpack: bundle is now VALID.

我的问题是,当我尝试使用浏览器访问 project:8080 时,出现加载错误。

A netstat -an | grep 8080in the vagrant 告诉我盒子正在听。我尝试使用转发端口homestead.yaml

ports:
  - send: 8080
    to: 8080
    protocol: tcp

但是不管有没有端口转发,我得到的只是一个错误页面。

我该怎么做才能让我的 webpack watcher 工作?

4

1 回答 1

3

好的,我终于找到了答案。问题不在于端口,而在于开发服务器。它默认配置为仅在 localhost 上工作。解决方案是在配置中添加一条规则:

 devServer     : {
            [...]
            , host          : '0.0.0.0'
    }

将主机设置为“0.0.0.0”允许从任何地方访问开发服务器,因此可以访问我的“真实”主机。我在GitHub 问题上找到了解释。太糟糕了,参数列表不在官方文档中。

于 2015-11-01T20:59:18.053 回答