node.js服务器无法在虚拟机(Azure云服务)中工作

node.js server not working in virtual machine (Azure Cloud Services)

本文关键字:Azure 服务 工作 虚拟机 服务器 js node      更新时间:2023-09-26

我是node.js的新成员,我只是想让一个简单的node.js服务器在我的本地主机上正常工作。这是"Hello World示例":

var http = require('http');
http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello World'n');
}).listen(8080);
console.log('Server running at http://localshot:8080/');

在我的localhost工作正常,我在控制台上执行node命令,我得到了"Hello World"消息。

, 我按照本教程在Azure上创建了一个Bitnami虚拟机

我使用SFTP将文件上传到服务器,并使用SSH连接远程进入VM控制台。(我已经在VM上安装了node.js)

ssh bitnami@100.101.102.103

但是当我尝试在Azure的CloudService上部署相同的节点操作时,我没有得到答案,显然服务器工作,因为它打印console.log消息,但我无法访问互联网。我如何在互联网上访问我的结果?我尝试了两种不同的方法:

使用azure链接

http://myAppName.cloudapp.net:8080

使用虚拟机IP

http://12.34.567.890:8080

我没有得到答案

如何访问internet服务器?或者我做错了什么?也许我需要更改Azure Portal上的设置才能看到端口?

谢谢

如果你已经在服务器上安装了node js,并且你也得到了console.log消息,那么可能你需要启用云服务器上的端口。我已经在aws服务器上做了,我启用了"自定义TCP端口"8080 0.0.0.0/0,以便ELB访问我的实例上的端口8080。

尝试使用webapps代替node,他们使用- nodeiis,从错误中自动重启并管理集群- git push to deploy

(如果你真的想使用云服务,是的,你必须添加一个端点)