我使用express-generator
生成了一个带罗盘样式表引擎的项目:
express --css compass app
当我开始使用npm start
(或node ./bin/www
,fwiw)时,应用程序符合预期。
然而,当我使用pm2来运行应用程序时,作为pm2 start ./bin/www
应用程序运行并返回一个html响应,但是当浏览器请求它时CSS失败,进程终止并且pm2重新启动它。这是一个返回502 Bad Gateway的nginx。
这些是pm2日志:
0|www | GET /home 200 320.238 ms - 914
0|www | Error: spawn compass ENOENT
0|www | at exports._errnoException (util.js:1050:11)
0|www | at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
0|www | at onErrorNT (internal/child_process.js:367:16)
0|www | at _combinedTickCallback (internal/process/next_tick.js:80:11)
0|www | at process._tickDomainCallback (internal/process/next_tick.js:128:9)
PM2 | App [www] with id [0] and pid [6624], exited with code [1] via signal [SIGINT]
PM2 | Starting execution sequence in -fork mode- for app name:www id:0
PM2 | App name:www id:0 online
我找不到有关为什么会发生这种情况的任何信息,以及为什么它与节点一起使用,而不是与pm2一起使用。任何帮助表示赞赏。
答案 0 :(得分:0)
Compass是需要安装的本机依赖项。
$ gem update --system
$ gem install compass
否则,我强烈建议,你应该编译罗盘样式表,不仅因为服务器上的命中率很高而且没必要。
相关:SO。