[英]How to prevent PM2 to change the current directory?
即時通訊使用PM2來處理我的微的NodeJS服務和快遞車把處理意見:
var hbs = exphbs.create({
defaultLayout: 'main',
helpers: {
ifeq: function(a, b, options) {
if (a === b) {
return options.fn(this);
}
return options.inverse(this);
},
toJSON : function(object) {
return JSON.stringify(object);
}
}
});
app.engine('handlebars', hbs.engine);
app.set('view engine', 'handlebars');
直接啟動應用程序(節點app.js)非常有用。 但如果我使用PM2(pm2 start app.js)午餐,我會得到:
錯誤:無法在視圖目錄“/ root / views”中查找視圖“home”
午餐時pm2當前工作目錄更改為/ root /並且由於我的應用程序不在那里,我從車把試圖打開視圖目錄(位於app目錄中)收到錯誤。
有沒有辦法通過告訴pm2當前工作目錄或通過告訴express-handlebars庫完整目錄而不是使用相對目錄來解決這個問題?
我使用Koa和SWIG作為模板 - 但我需要在應用程序設置中包含視圖的路徑:
app.use(koaRender('./server/server-side-views', {
map: { html: 'swig' },
cache: false
}));
我懷疑你的情況更為相似。 我認為在快遞中你的代碼應該是這樣的:
app.engine('handlebars', hbs.engine);
app.set('view engine', 'handlebars');
app.set('views', __dirname + '/yourViewDirectory');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.