从WHM / cPanel应用程序管理器运行Node.JS应用程序时,“乘客”文件缺少“ PassengerStartupFile”,并且实际上不会运行

时间:2019-06-11 15:48:48

标签: node.js cpanel passenger

我已经通过cPanel以及所有Phusion Passenger文件和依赖项安装了Node.JS。我可以通过SSH手动运行该应用程序。我已经在cPanel的“应用程序管理器”中创建了该应用程序。但是,在“启用”应用程序之后,它实际上并没有在“运行”,只会导致出现“乘客错误”页面。它说它无法执行该应用程序。

如果我手动检查/etc/apache2/conf.d/userdata/ssl/2_4/username/subdomain/application_name.conf中的应用程序配置文件,则可以看到它没有PassengerStartupFile的条目。如果我添加行

PassengerStartupFile ./bin/www

并重新启动旅客服务,可以正常使用,我可以通过URL访问它。但是,如果我通过cPanel禁用并重新启用该应用程序,则会重新生成conf文件,并且该条目会丢失。

如何获取cPanel来添加PassengerStartupFile项,或如何使乘客从package.json文件或环境变量或其他内容中自动检测启动文件?

作为一种变通办法,我创建了第二个application_name_patch.conf文件,其中缺少配置行,以便最终将它们全部编译在一起,但这很繁琐...

1 个答案:

答案 0 :(得分:1)

您要在application_name_patch.conf文件旁边添加第二个appliation_name.conf文件的解决方案正是您需要的解决方案,如此处所述:How to Install a Node.js Application

链接的文章建议您将路径/etc/apache2/conf.d/userdata/ssl/2_4/user/domain.nodejs.conf用于自定义启动文件,但是我建议您使用路径/etc/apache2/conf.d/userdata/ssl/2_4/user/domain/nodejs.conf,因为这会将自定义配置放置在与原始应用程序相同的目录中conf文件。