我在 Digital Ocean 上创建了一个 Node.js Droplet。
我已使用 FileZilla 连接到服务器并上传了所有 Node.js 文件(index.js、package.json 等)。
我正在尝试使用 node index.js
启动服务器。它说
App is running at http://localhost:3000 in development mode
Press CTRL-C to stop
但是,我无法在 Digital Ocean 提供的公共(public) IP 地址和 localhost:3000
上看到该网站。
如何正确启动Node.js服务器?
编辑
我正在用这个(index.js
的内容)设置服务器:
const express = require('express');
const app = express();
app.set('port', process.env.PORT || 3000);
app.listen(app.get('port'), () => {
console.log('App is running at http://localhost:%d in %s mode', app.get('port'), app.get('env'));
console.log(' Press CTRL-C to stop\n');
});
最佳答案
首先,您要通过在同一台机器上打开另一个终端并执行 curl 来确保一切正常运行。
curl http://localhost:3000
在您确认可以正常工作后,您必须在机器上打开相应的端口。
让我们通过运行以下命令查看当前打开了哪些端口。
sudo ufw status verbose
如果未列出端口 3000,请使用以下命令添加它。
sudo ufw allow 3000/tcp
再次运行 ufw status
验证端口 3000 是否已添加。
sudo ufw status verbose
关于javascript - 在 Digital Ocean 上启动 Node.js 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46032280/