Как использовать другой Ruby для другого веб-приложения? Redmine ошибка

Я пытаюсь установить новую версию Redmine на моем сервере. Сейчас у меня есть Redmine 1.3.2, и я установил 2.4.3

, но пассажир не может открыть мое приложение, и я получаю эту ошибку: Redmine Error

У меня разные рубины установлен случайно. Но я не хочу его менять, так как другие приложения используют ruby, и я не хочу ничего испортить.

Прямо сейчас мой RVM говорит, что мой используемый ruby ​​- это версия 2.0.0 (использующая RVM LIST)

Если я выберу which -a ruby, вывод будет такой:

/home/me/.rvm/rubies/ruby-2.0.0-p247/bin/ruby
/home/me/.rvm/bin/ruby
/usr/bin/ruby

поэтому я попытался запустить другой ruby, определенный в моем apache2. Используя официальное руководство от пассажира. Но когда я помещаю в свой apache эту строку:

PassengerRuby /path/to/my/ruby

я получаю ошибку «PassengerRuby не разрешено устанавливать здесь»

Как я могу использовать свой ruby ​​2.0.0 для нового redmine ? Теперь он указывает на версию 1.8, как на скриншоте

1
задан 16 March 2014 в 00:37

1 ответ

Я столкнулся с подобной проблемой (но не с Redmine, а с CentOS 6). Я хотел перейти на использование ruby ​​2.3.0 на моем производственном сервере для моего приложения. Вот некоторые шаги, которые я предпринял:

Установите ruby ​​2.3.0:

rvm install 2.3.0

Установите значение по умолчанию. Примечание: запустите это как root / администратор.

rvm use --default 2.3.0

Установлен последний пассажир:

gem install passenger

Установлен модуль apache2 пассажира:

pasenger-install-apache2-module

Сценарий установки модуля предоставляет код для добавления в вашу конфигурацию apache, которая для меня это выглядело так:

LoadModule passenger_module /usr/local/rvm/gems/ruby-2.3.0/gems/passenger-5.0.29/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
  PassengerRoot /usr/local/rvm/gems/ruby-2.3.0/gems/passenger-5.0.29
  PassengerDefaultRuby /usr/local/rvm/gems/ruby-2.3.0/wrappers/ruby
</IfModule>

Я поместил это в свой файл /etc/httpd/conf.d/passenger.conf, но, возможно, это можно будет поместить в файл конфигурации apache для вашего конкретного приложение. Сценарий установки pasenger-install-apache2-module фактически проверит ваши файлы конфигурации после того, как вы их отредактируете, и сообщит вам, если обнаружит какие-либо проблемы.

Затем перезапустите Apache и ваше приложение.

0
ответ дан 16 March 2014 в 00:37

Другие вопросы по тегам:

Похожие вопросы: