我正在尝试将GitHub Probot 应用程序18.0.27 U1
(NodeJS 应用程序)部署到我的使用 NodeJS Extension运行 Plesk的网络服务器1.3.6-117
。在我的本地机器上运行 probot 应用程序时,该应用程序启动得很好,并且可以通过 localhost 访问。
Plesk 显然使用Phusion Passenger 应用程序服务器来服务 NodeJS 应用程序。
访问已部署的网站时,出现以下错误:
并在/var/log/nginx/error.log
:
[ E 2020-05-30 10:06:31.7393 21506/Th age/Cor/App/Implementation.cpp:221 ]: Could not spawn process for application /var/www/vhosts/example.org/node_root: A timeout occurred while spawning an application process.
Error ID: 5f02dec5
Error details saved to: /tmp/passenger-error-y6AeCv.html
[ E 2020-05-30 10:06:31.7466 21506/T5 age/Cor/Con/CheckoutSession.cpp:276 ]: [Client 1-2] Cannot checkout session because a spawning error occurred. The identifier of the error is 5f02dec5. Please see earlier logs for details about the error.
到目前为止我测试过的东西
- 我增加了在 nginx 中启动应用程序的超时时间
passenger_start_timeout 300;
- 我为此网站在 Plesk 中禁用了php和proxy_mode (默认情况下,Nginx 代理向 Apache 请求,但乘客仅在 nginx 上运行)
- 我编写了一个自定义启动脚本来禁用乘客自动安装并将节点 dotenv 文件中的网络服务器端口设置为
PORT="passenger"
#!/usr/bin/env node
const { Probot } = require('Probot')
// @ts-ignore
if (typeof(PhusionPassenger) !== 'undefined') {
//@ts-ignore
PhusionPassenger.configure({ autoInstall: false });
}
Probot.run(process.argv)
开始问题
我的应用程序失败还是乘客无法绑定应用程序的端口?
是否有更详细的日志或启用详细输出的选项?
提前致谢!