Подтвердить что ты не робот

Не удалось запустить сторожевой таймер Phusion Passenger?

Я установил настройку Phusion Passenger на Ubuntu 10.04 с Apache2. Когда я перезапускаю сервер 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.
4b9b3361

Ответ 1

Я столкнулся с той же проблемой при компиляции из исходного кода, но это было прерывистым, что было очень неприятно (я думаю, что это должно быть с средами Rails). Мы не могли использовать скрипты "install-apache2-module/пассажир-install-nginx-module" для пассажира, потому что нам нужна индивидуальная установка nginx.

Я, наконец, исправил проблему, перейдя к passenger-config --root, а затем запустив: rake nginx.

Обновление февраль 2016 (автор пассажира):

Официально поддерживаемый метод компиляции PassengerAgent (без компиляции Nginx, как это делает модуль-install-nginx-модуль) с помощью этой команды:

passenger-config compile-agent

Пассажир 5.0.26 и позже автоматически обнаружит ошибку, описанную в этом вопросе StackOverflow, и автоматически предложит выполнить приведенную выше команду.

Ответ 2

Я просто ударил эту ошибку сам и изо всех сил пытался найти хороший ответ, так что вот моя запись. В моей настройке я собираюсь для Ubuntu, Apache2, последнего Пассажира и Rails 2.3.

  • Установить Ruby и Rubygems NB: make (очень) уверен, что ваш gem -v правильный, если он ошибается, вы будете делать все это дважды
  • 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. NB: PassengerWatchdog не спускается с apt-get, поэтому мы схватили двоичные файлы.
  • ln -s /usr/lib/passenger-3.0.12 /usr/lib/phusion-passenger # = > аналогичные проблемы.

Это из памяти, пробивающей ее последние полтора дня, я буду прибирать, когда мне придется пройти через нее снова.

Ответ 3

Попробуйте установить пассажирский модуль, запустив script module-install-apache2-module. У меня была такая же проблема, но на nginx; Я установил пассажира через драгоценный камень, а затем перекомпилировал nginx вручную с пассажирским модулем - это вызвало описанную вами ошибку. После запуска модуля-пассажира-nginx такая ошибка исчезла.

Ответ 4

Прошло некоторое время с тех пор, как я перезапустил 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, и ошибка исчезла.

Ответ 5

У меня была такая же проблема на моем Nginx-сервере.
В моем случае каталог passenger_root был неправильным из-за обновления gem.

[1] В Linux я обыскал каталог пассажиров со следующей командой:

find / -name PassengerWatchdog

[2] Теперь я изменил значение "пассажир_руч" в этом каталоге.
[3] И перезапустите сервер.

suvankar, Возможно, вам также нужно изменить свой Пассажирский путь.