[英]nodejs app works locally but not when deployed
我正在使用iisnode托管節點應用程序。 我實際上無法在我的域名下部署它。 這是帶有兩個不同起點的主文件。 未經注釋的代碼只是一個簡單的服務器,當通過我的域訪問時,它可以正常工作(因此iisnode正確映射和處理了節點應用程序)。 注釋的代碼是我正在處理的Express應用程序的入口點,當我從本地主機查看時,此代碼有效,但是當嘗試通過我的域進行訪問時,出現“無法獲取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文件。 我認為這是一個路由問題,我用console.log函數代替了indexRoute函數,並且它永遠不會觸發。 但是我仍然不明白為什么這可以通過本地主機正常訪問,但不能在我的域下正常訪問。
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鏈接。
通過添加“ 0.0.0.0”作為要監聽的參數,嘗試指定您要從所有IP地址(而不僅僅是本地主機)監聽。 還添加一個回調以查看發生了什么。
app.listen(process.env.PORT, '0.0.0.0', function(err) {
console.log("Started listening on %s", app.url);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.