我是nodejs/reactjs世界的新手,所以如果我的问题听起来很傻,我很抱歉。我在摆弄react。js。

每当我做一个npm启动,它总是运行在localhost:8080。

如何将其更改为在0.0.0.0:8080上运行以使其可公开访问?我一直试图阅读上述回购中的源代码,但未能找到执行此设置的文件。

此外,要补充的是-我如何使它在端口80上运行,如果这是可能的?


当前回答

对我来说:改变监听主机有效:

.listen(3000, 'localhost', function (err, result) {
        if (err) {
            console.log(err);
        }
        console.log('Listening at localhost:3000');
    });

改为:

.listen(3000, '0.0.0.0', function (err, result) {
        if (err) {
            console.log(err);
        }
        console.log('Listening at localhost:3000');
    });

服务器开始监听0.0.0.0

其他回答

对我来说,这个代码起作用了。只要把它加在你的包装上。Json文件:

"scripts": {
    "dev-server": "encore dev-server",
    "dev": "webpack-dev-server --progress --colors",
    "watch": "encore dev --watch",
    "build": "encore production --progress"
},

然后通过运行npm run build运行脚本“build”

我尝试了上面的解决方案,但没有运气。我注意到这一行在我的项目的package.json:

 "bin": {
"webpack-dev-server": "bin/webpack-dev-server.js"

},

我查看了bin/webpack-dev-server.js,发现了这一行:

.describe("port", "The port").default("port", 8080)

我把端口改成了3000。有点蛮力的方法,但对我很有效。

以下工作为我在JSON配置文件:

"scripts": {
  "start": "webpack-dev-server --host 127.0.0.1 --port 80 ./js/index.js"
},

我尝试这样做是为了方便地使用另一个端口:

PORT=80 npm run dev

对于windows,创建文件runMobile.bat

set PORT=8081
set HOST=192.168.3.20
npm run dev