Можно ли изменить версию Passenger Ruby без перекомпиляции?

Я попытался изменить команду ruby по умолчанию на 1.9.2, но Passenger продолжает работать 1.8.7

Скомпилирован ли пакет с встроенным Ruby?

Ответ 1

Чтобы установить версию Ruby, добавьте эту строку в свой файл vhost:

PassengerRuby /path/to/the/ruby/version/you/want/to/use

Ответ 2

Всякий раз, когда "обновление пакета" обновляет версию пассажирского жемчужина, я делаю

sudo su -
passenger-install-apache2-module

В конце этого процесса он выплескивает полный блок данных, который вам нужно установить в верхней части или в конфигурацию Apache. Например. что-то вроде:

LoadModule passenger_module /usr/local/rvm/gems/[email protected]/gems/passenger-3.0.9/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/rvm/gems/[email protected]/gems/passenger-3.0.9
PassengerRuby /usr/local/rvm/wrappers/[email protected]/ruby

Я обновляю blob вещей, перезапускаю Apache, и все кажется хорошо.

Я предполагаю, что этот же процесс необходим после обновления Ruby.

Ответ 3

Установите PassengerRuby перед тегом <Directory>.

Пример:

PassengerRuby /home/ubuntu/.rvm/wrappers/ruby-2.3.1/ruby

Он работает для меня!

Найти более подробно в этот пост.