nodejs应用程序在本地工作,但部署时不工作

我正在使用iisnode来托pipe节点应用程序。 我实际上在我的域名下部署它时遇到麻烦。 这里有两个不同的起点的主文件。 未评论的代码只是一个简单的服务器,通过我的域访问时正常工作(所以iisnode是正确的映射和处理节点应用程序)。 注释的代码是我正在使用的快速应用程序的入口点,当我从本地主机上查看时,这种方法是有效的,但是当试图通过我的域进行访问时,我收到了'can not GET application.js'错误。

var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end('Hello, world!'); }).listen(process.env.PORT); //require('./app/init'); //var server = require('./app/server'); //module.exports = server.start(process.env.NODE_ENV); 

这是我的server.js文件。 我认为它是一个路由问题,我已经替代了indexRoute函数的console.log函数,并且它永远不会触发。 但我仍然不明白为什么这个工作通过本地正确访问,但不是在我的域名下。

  var express = require('express'); var routes = require('./routes'); var app = express(); function createApplication(environment) { app.get('/', routes.indexRoute); app.listen(process.env.PORT); return app; } module.exports.start = createApplication; 

如果有人感兴趣,我可以给完整的应用程序发送一个git链接。

尝试指定您想要从所有IP地址侦听,而不仅仅是本地主机,通过添加“0.0.0.0”作为参数来侦听。 还添加一个callback看看发生了什么。

 app.listen(process.env.PORT, '0.0.0.0', function(err) { console.log("Started listening on %s", app.url); });