无法远程连接到Node.js服务器

时间:2012-12-19 20:11:24

标签: apache node.js remote-access

我刚刚开始使用Node.js,而我遇到了一个只能在本地访问我的Node服务器的问题。我在这里松散地遵循教程:http://coenraets.org/blog/2012/10/creating-a-rest-api-using-node-js-express-and-mongodb/

我在Apache服务器共享上托管代码虽然我已经让它在我的win7机器上本地运行。服务器共享托管实例运行正常,我可以使用lynx在本地ping它,它运行良好。但是,当我尝试在hostname.com:3001或hostname.com:3001/wines远程访问实例时,它只是超时。我的服务器日志显示该端口上的传入连接,但它似乎没有通过该实例。

我尝试将实例从我的Node开发目录移动到www目录,认为这是权限问题,但没有帮助。我对使用Apache并不熟悉,所以我可能错过了某种基本的权限设置。该份额由bluehost托管,以获得它的价值。我检查了管理员设置,但我找不到任何阻止该端口的防火墙。

var express = require('express');
var http = require('http');
var app = express();
var server = http.createServer(app);

app.get('/', function(req, res){
        console.log('ping');
});
app.get('/wines', function(req, res){
        console.log('req @ /wines');
        res.send([{name:'wine1'},{name:'wine2'},{name:'wine foo'}]);
});

server.listen(3001);
console.log('listening to port ', server.address().port);

1 个答案:

答案 0 :(得分:1)

要使其在bluehost中工作,首先必须拥有专用的IP帐户(请参阅https://my.bluehost.com/cgi/help/405),然后您必须请求允许传入连接到端口3001。

但是,我怀疑如果你想要nodejs,你最好找一个新的托管服务提供商。