Webpack 在自定义域上本地运行而没有套接字问题

Posted

技术标签:

【中文标题】Webpack 在自定义域上本地运行而没有套接字问题【英文标题】:Webpack to run locally on a custom domain without socket issues 【发布时间】:2017-06-11 21:49:24 【问题描述】:

我的设置:

通过代理使用 react-create-app 来使用服务器 API。 (Using create-react-app with a server)

由于 Yahoo oAuth2 API 不允许 localhost:**** 或 127.0.0.1:**** 在其 URL 回调link。

我必须首先创建一个 nginx 代理来将 localhost:3000 发送到端口 80,然后我将 localhost 重新路由到 -> mywebsite.dev

好的,如果我使用的是简单的 node.js 服务器,此设置可以正常工作:

    按登录按钮进入雅虎 (/auth) 在服务器上进行身份验证并发送到回调 URL (mywebsite.dev/callback) 同意 yahoo 条件后,我被重新路由到 /callback,我可以正常使用 API

但是在使用 create-react-app 设置时,我遇到了问题。

A)当启动服务器时一切正常,我去 mywebsite.dev 但后来我得到了这个: 我收到错误 webpack-dev-server 正在尝试侦听 localhost:**** 并且由于 url 是 mywebsite.dev 它给出了这个问题,我无法修复它!

所以问题是如何让 Webpack 知道我的本地服务器位于 mywebsite.dev 而不是 localhost:**** ?

相关:link 1 - simular issue,link 2 - node.js custom domain name

【问题讨论】:

【参考方案1】:

你可以在运行 webpack 时指定主机

webpack-dev-server --port 3000 --hot --host mywebsite.dev

或者你可以听

 var server = new WebpackDevServer(webpack(webpackConfig), 
    ...
  );
  server.listen(port, "mywebsite.dev", function(err)  ...

【讨论】:

这并不能解决问题,如果你这样做,那么 URL 将变为 mywebsite.dev:3000 而不是 mywebsite.dev 。 移除 --port 3000 同样的,它只是使用默认端口 :8080 :S

以上是关于Webpack 在自定义域上本地运行而没有套接字问题的主要内容,如果未能解决你的问题,请参考以下文章

如何在自定义 URL 上运行 Laravel mix?

我的 ngrok Tunne 状态显示正在重新连接在自定义端口上运行 (4901)

运行在 HTTPS/Web 套接字上的 Webpack 开发服务器安全

BigQuery:在自定义分区字段上运行 Select 时处理的数据

如何在自定义地图上进行离线地理定位,phonegap+kml

在自定义框架中使用动作脚本打开页面