FCGI Ruby Gem не найден при использовании apache
Я использую Apache с FastCGI для запуска приложения ruby. Я установил модуль apache fcgi, а также Ruby fcgi gem.
Когда я запускаю скрипт fcgi 'search.fcgi', вот так
ruby search.fcgi
Работает успешно. Однако при запуске Apache я получаю следующую ошибку в моем файле журнала, когда он пытается запустить тот же скрипт:
/usr/local/rvm/rubies/ruby-2.1.8/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- fcgi (LoadError)
from /usr/local/rvm/rubies/ruby-2.1.8/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from /home/user/fcgi/search.fcgi:13:in `<main>'
Строка 13 в search.fcgi простоrequire 'fcgi'
Похоже, что при запуске через Apache он не может обнаружить установленный драгоценный камень. Я загрузил IRB и и запустить require 'fcgi'
который возвращает истину.
Я что-то здесь упускаю? Какой путь или элемент конфигурации мне нужно установить?
1 ответ
Моя проблема была вызвана тем, что Ruby был установлен с использованием RVM. Была некоторая проблема со скриптом из-за доступа apache к некоторым частям инстилляции RVM. Решение состояло в том, чтобы удалить установку ruby RVM и переустановить ruby из источника.