我是nodejs/reactjs世界的新手,所以如果我的问题听起来很傻,我很抱歉。我在摆弄react。js。
每当我做一个npm启动,它总是运行在localhost:8080。
如何将其更改为在0.0.0.0:8080上运行以使其可公开访问?我一直试图阅读上述回购中的源代码,但未能找到执行此设置的文件。
此外,要补充的是-我如何使它在端口80上运行,如果这是可能的?
我是nodejs/reactjs世界的新手,所以如果我的问题听起来很傻,我很抱歉。我在摆弄react。js。
每当我做一个npm启动,它总是运行在localhost:8080。
如何将其更改为在0.0.0.0:8080上运行以使其可公开访问?我一直试图阅读上述回购中的源代码,但未能找到执行此设置的文件。
此外,要补充的是-我如何使它在端口80上运行,如果这是可能的?
当前回答
以下对我有用-
1)包装中。Json添加这个:
"scripts": {
"dev": "webpack-dev-server --progress --colors"
}
2)在webpack.config.js中,在你导出的config对象下添加:
devServer: {
host: "GACDTL001SS369k", // Your Computer Name
port: 8080
}
3)现在在终端类型:npm运行dev
4)在#3编译并准备好后,只需前往您的浏览器并输入地址http://GACDTL001SS369k:8080/
您的应用程序现在应该能够使用外部URL工作,其他人可以在同一网络上访问该URL。
PS: GACDTL001SS369k是我的计算机名,所以请替换为您机器上的任何计算机名。
其他回答
如果你在用“create-react-app”创建的React应用程序中,请转到你的包中。Json和更改
“start”:“react-scripts start”,
……(unix)
"start": "PORT=80 response -scripts start",
或者…(赢)
"start": "set PORT=3005 && response -scripts start"
以下对我有用-
1)包装中。Json添加这个:
"scripts": {
"dev": "webpack-dev-server --progress --colors"
}
2)在webpack.config.js中,在你导出的config对象下添加:
devServer: {
host: "GACDTL001SS369k", // Your Computer Name
port: 8080
}
3)现在在终端类型:npm运行dev
4)在#3编译并准备好后,只需前往您的浏览器并输入地址http://GACDTL001SS369k:8080/
您的应用程序现在应该能够使用外部URL工作,其他人可以在同一网络上访问该URL。
PS: GACDTL001SS369k是我的计算机名,所以请替换为您机器上的任何计算机名。
对我来说:改变监听主机有效:
.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
我尝试了上面的解决方案,但没有运气。我注意到这一行在我的项目的package.json:
"bin": {
"webpack-dev-server": "bin/webpack-dev-server.js"
},
我查看了bin/webpack-dev-server.js,发现了这一行:
.describe("port", "The port").default("port", 8080)
我把端口改成了3000。有点蛮力的方法,但对我很有效。
配置webpack(在webpack.config.js中):
devServer: {
// ...
host: '0.0.0.0',
port: 80,
// ...
}