首页 文章

无法启动Phusion Passenger看门狗?

提问于
浏览
26

我在Ubuntu 10.04上使用Apache2完成了Phusion Passenger设置 . 每当我重新启动Apache服务器时,我收到以下错误消息,并且Rails应用程序未运行 .

[error] *** Passenger could not be initialized because of this error: Unable to start the Phusion Passenger watchdog because its executable (/usr/lib/phusion-passenger/agents/PassengerWatchdog) does not exist. This probably means that your Phusion Passenger installation is broken or incomplete, or that your 'PassengerRoot' directive is set to the wrong value. Please reinstall Phusion Passenger or fix your 'PassengerRoot' directive, whichever is applicable.

5 回答

  • 9

    从源代码编译时我遇到了同样的问题,但它是间歇性的,这真的令人沮丧(我认为它必须w / Rails环境) . 我们无法使用passenger-install-apache2-module / passenger-install-nginx-module脚本,因为我们需要一个自定义的nginx安装 .

    我终于通过转到 passenger-config --root ,然后运行: rake nginx 来解决问题 .

    Update February 2016 (by Passenger author):

    官方支持的编译PassengerAgent的方法(没有编译Nginx,就像passenger-install-nginx-module那样)是用这个命令:

    passenger-config compile-agent
    

    Passenger 5.0.26及更高版本将自动检测此StackOverflow问题中描述的错误,并将自动建议运行上述命令 .

  • 7

    我自己刚刚遇到这个错误并且很难找到一个好的答案,所以这是我的写作 . 在我的设置中,我将使用Ubuntu,Apache2,最新的Passenger和Rails 2.3 .

    • 安装Ruby和Rubygems注意:make(非常)确定你的 gem -v 是正确的,如果它's wrong you' ll做了所有这两次

    • sudo gem install passenger

    • cd /usr/lib

    • wget http://rubyforge.org/frs/download.php/76005/passenger-3.0.12.tar.gz

    • tar zxvf passenger-3.0.12.tar.gz

    • cd passenger-3.0.12

    • ./bin/passenger-install-apache2-module

    • export PATH=/var/lib/gems/1.8/bin:$PATH 添加到〜/ .bashrc

    • ln -s /usr/lib/passenger-3.0.12 /usr/share/phusion-passenger #=>这解决了与PassengerWatchdog有关的伤病世界 . 注意:PassengerWatchdog没有使用apt-get,这就是我们 grab 二进制文件的原因 .

    • ln -s /usr/lib/passenger-3.0.12 /usr/lib/phusion-passenger #=>类似的问题 .

    这是在最后一天半的时间里通过记忆而来的记忆,当我必须再次通过时,我会整理一下 .

  • -2

    尝试通过运行脚本passenger-install-apache2-module安装乘客模块 . 我有同样的问题,但在nginx;我通过gem安装了乘客,然后用乘客模块手动重新编译了nginx - 这导致了您所描述的错误 . 运行passenger-install-nginx-module后,这样的错误就消失了 .

  • 0

    自从我重新启动nginx以来已经有一段时间了,与此同时,乘客的路径发生了变化 . 我查看 nginx.conf 以查看 passenger_root 设置为什么并意识到它是旧的值:

    http {
        passenger_root /home/nginx/rails_app/myapp/shared/bundle/ruby/1.9.1/gems/passenger-enterprise-server-3.0.17;
    

    通常有两个地方需要改变:

    server {
        listen 8888;
        root /home/nginx/rails_app/myapp/current/public;
    

    我重新启动了nginx,错误消失了 .

  • 61

    我在Nginx-Server上遇到了同样的问题 .
    就我而言,由于gem更新, passenger_root 目录不正确 .

    [1]在Linux上,我使用以下命令搜索了乘客目录:

    find / -name PassengerWatchdog
    

    [2]现在我将'passenger_root' Value更改为此目录 .
    [3]然后重启服务器 .

    suvankar, Maybe you should change your Passenger Path too.

相关问题