乘客好像不是运行 (Capistrano/Rails/Apache/Ubuntu)

Passenger doesn't seem to be running (Capistrano/Rails/Apache/Ubuntu)

使用 Capistrano 将 Rails 应用程序部署到 Ubuntu VM 运行 Apache 并启用了 Passenger。

我遵循了本教程:https://www.phusionpassenger.com/library/install/apache/install/oss/trusty/ 考虑到我使用的是 17.04,而不是 14.04 LTS,我做了一些更改。

passenger-config validate-install 表示 Passenger 和 Apache 一切正常。 passenger-memory-stats 同时显示 Passenger 和 Apache 进程。

我已经 sudo apache2ctl restart 编辑了好几次,没有任何警告。但是 passenger-status,因此 Capistrano 运行的 passenger-config restart-app 报告 Passenger "doesn't seem to be running." 所以我的部署停止了。

机器上只有一个 Ruby,使用 ruby-install 安装 ruby-2.4.1。如果版本不匹配,我有 apt-get updateupgraded。

Apache 日志没有显示任何错误,当然 none 与 Passenger 有关。

为什么Passenger内部不同意,说配置好,有进程运行,后来又说不是运行?

很抱歉,您在 ubuntu 服务器上 运行 passenger-config validate-install(不是 osx)了吗? passenger-memory-statssudo apache2ctl restart.

相同

基于 /tmp 没有 passenger.randomstring 目录,听起来您混淆了本地和远程命令。 /tmp 是 Ubuntu 上 PassengerInstanceRegistryDir 的默认位置,因此如果 Passenger 在 运行ning 中,/tmp 中应该有一个以 [=18= 开头的目录].

我需要按照 Tony Vincent 的建议自定义实例注册表目录:

/etc/apache2/mods-enabled/passenger.conf 在服务器上:

PassengerInstanceRegistryDir /home/MYUSER/passenger_temp

config/deploy/production.rb 在 Rails 应用中:

set :default_env, { 'PASSENGER_INSTANCE_REGISTRY_DIR' => '/home/MYUSER/passenger_temp' }