nodejs在ubuntu上的默认文档

时间:2014-11-01 03:10:14

标签: node.js installation ubuntu-12.04 web-deployment

我在这里进入了新领域。根本不是linux的人,但我从我的托管公司Ubuntu 12.0.4运行apache2获得了一个专用服务器。我的域名已成功解析到该服务器(基本的html' Hello World'索引页面显示正常)。

我已经安装了npm,node和express,他们(尽我所知)正常工作。我已将此应用添加到根目录为' hello.js':

  var express = require('express');
  var app = express();

  app.get('/', function(req, res){
    res.write("Hello World");
    res.end();
  });

  app.listen(process.env.PORT, function(){
    console.log("Server Started");
  });

我把腻子放进(术语?)并运行节点hello.js'我得到了“服务器启动”#39;信息。但是当我进入我的域名时没有结果。如果我有一个index.html页面,我会得到它的内容。如果我删除它,我会得到一个目录列表。

如何让hello.js网站默认使用doc?或者,更一般地说,如何设置入口点以使用此配置在lve服务器上运行节点站点?我可以编写节点,但部署结果比预期的要困难得多。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

您所看到的是击中Apache的结果。不是你的Node.js服务器。

尝试从命令行启动服务器:

$ PORT=8080 node hello.js

然后将浏览器指向:

http://www.youdomain.com:8080/

这将在端口8080上启动node.js进程.app.listen的第一个参数是process.env.PORT,它是一个环境变量,您可以使用上面的命令在命令行上进行设置。 / p>

只要您没有在服务器和本地计算机之间的防火墙中阻止端口8080,这应该可以正常工作。

如果您希望Node.js在标准端口80上为整个网站供电,那么您需要先禁用Apache或将其设置为反向代理。