繁体   English   中英

Node.js在Amazon EC2 Ubuntu 14.04服务器上不起作用?

[英]Node.js doesn't work on Amazon EC2 Ubuntu 14.04 server?

我最近在使用shell安装nodejs时在Amazon EC2上设置了ubuntu14.04服务器:

curl -sL https://deb.nodesource.com/setup | sudo bash -
sudo apt-get install -y nodejs

它说nodejs已经是最新版本。 为了检查Node是否成功安装,我将其写入test.js文件

var sys = require("sys");  
sys.puts("Hello World");

当我尝试

node test.js

我在shell.strange..someohelp中什么都没有?

我按照官方演示

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

将其保存为server.js尝试与节点server.js一起运行不起作用...

但这在我的本地ubuntu服务器计算机上运行良好。 所以我想这可能是亚马逊的问题?

我看到这个线程:

无法连接到Amazon EC2上托管的Node Web服务器

并且在我的问题上也不起作用。在我允许所有端口上的所有位置的所有流量通过后,仍然遇到相同的问题。

顺便说一句,我正在使用PUTTY连接到服务器。

没错,ubuntu 14.04的nodejs版本不同,所以我从官方网站下载了.tar.gz文件,将其解压缩并运行

./configure && make && sudo make install

那对我有用...

节点!= nodejs。 尝试运行:nodejs test.js

问题是某些版本的Ubuntu(包括14.04)需要为nodejs安装其他软件包。 节点进程存在冲突,您实际上不是在运行节点,而是在运行其他一些应用程序。

要解决此问题,请使用sudo apt get install nodejs-legacy安装nodejs以sudo apt get install nodejs-legacy 这样做之后,如果运行node --version ,应该会看到返回的node --version

尝试:

 sudo node test.js 

对我有用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM