如何使用Phusion Passanger服务Nodejs&Express应用

我有一个Node&Express应用程序,当前托管在共享主机上。我想使用Phusion Passenger运行和管理该应用程序。我的托管帐户支持我从未使用过的由Passenger管理的nodejs应用程序。

如何使用Phusion Passanger服务Nodejs&Express应用

设置Node应用程序时生成的服务器代码是基本的服务器设置,如下所示。

var http = require('http');
var server = http.createServer(function(req,res) {
    res.writeHead(200,{'Content-Type': 'text/plain'});
    var message = 'It works!\n',version = 'NodeJS ' + process.versions.node + '\n',response = [message,version].join('\n');
    res.end(response);
});
server.listen();

我想用下面的代码替换它,该代码包含我用于服务API路由的express元素。

//import modules
var express = require('express'),bodyParser = require('body-parser'),morgan = require('morgan'),cors = require('cors');
    path = require('path');

var app = express();
var port = process.env.PORT || 3000;

//import database connection from dbconnect.js file
var mysql = require('./dbconnect/dbconnect');

//Parse as urlencoded and json.
app.use(bodyParser.urlencoded({extended:false}));
app.use(bodyParser.json());

//adding middleware - cors
app.use(cors());

//Http logger
app.use(morgan('dev'));

//Uncomment for production
//app.use(express.static(__dirname + '/public'));

// Point static path to public
app.use(express.static(path.join(__dirname,'public')));

//import routes from /routes/routes.js
var user = require('./routes/Users');  
    route = require('./routes/route');
    router = require('./router/router');
//adding routes
app.use('/api',user,route,router);

// Catch all other routes and return the index file
app.get('/*',(req,res) => { res.sendFile(path.join(__dirname,'/public/index.html'));
});

app.use(function (req,res,next){
    res.header("access-control-allow-origin","*");
    res.header("access-Control-Allow-Headers","x-access-token,Origin,Content-Type,accept");
    next();
});

app.listen(port,function() {console.log('Server started at http://localhost:'+port+'/');});

但是我得到了错误:

如何使用Phusion Passanger服务Nodejs&Express应用

我目前正在使用 Forever 在共享服务器上运行服务器脚本,该脚本运行正常,但效率不高,所以我想切换到使用Passenger。

bestd 回答:如何使用Phusion Passanger服务Nodejs&Express应用

您是否可以设置NODE_ENV=development,然后再次查看您的页面?它可能会输出更多的信息,为什么会引发错误。

有了错误信息,我们可以更好地了解可能出了什么问题。

谢谢, 马克

,

我怀疑这与您的路线有关,并且找不到文件。

本文链接:https://www.f2er.com/2605382.html

大家都在问