我已经通过cPanel安装了Node.JS,以及所有的Phusion Passenger文件和依赖项。我可以通过SSH手动运行应用程序。我已经在cPanel的应用程序管理器中创建了应用程序。然而,在应用程序被“启用”之后,它实际上并没有“运行”,而只是导致Passenger error页面。它说,它无法执行该应用程序。
如果我在/etc/apache2/conf.d/userdata/ssl/2_4/username/subdomain/application_name.conf
中手动检查应用程序配置文件,我可以看到它没有PassengerStartupFile
条目。如果我添加这行
PassengerStartupFile ./bin/www
并重新启动乘客服务,我可以通过URL访问它。但是,如果我通过cPanel禁用并重新启用应用程序,则会重新生成conf文件,并且该条目将丢失。
如何让cPanel添加PassengerStartupFile
条目,或者让Passenger从package.json
文件或环境变量或其他文件中自动检测启动文件?
作为一种变通办法,我创建了第二个application_name_patch.conf
文件,其中包含缺少的配置行,以便最终将其全部编译在一起,但这很麻烦……
发布于 2019-09-05 10:00:21
在appliation_name.conf
文件旁边添加第二个application_name_patch.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
,因为这会将自定义配置放置在与原始应用程序配置文件相同的目录中。
https://stackoverflow.com/questions/56547447
复制