Ошибка при использовании Phusion Passenger - Не удалось найти sqlite3-ruby-1.2.5 ни в одном из источников (Bundler :: GemNotFound) - PullRequest
1 голос
/ 12 апреля 2011

Я наконец-то настроил RoR на моем сервере с помощью Phusion Passenger, и отображается страница приложения RoR по умолчанию, однако, когда я нажимаю «О среде вашего приложения», я получаю сообщение об ошибке «Приложение Ruby (Rack) не может быть запущено». и под битом сообщения об ошибке «Не удалось найти sqlite3-ruby-1.2.5 ни в одном из источников (Bundler :: GemNotFound)».

Если я выполняю 'bundle install' в командной строке, я получаю список сообщений в стиле 'Using x (y)', в том числе:

Использование sqlite3-ruby (1.2.5)

(мне пришлось понизить версию до 1.2.5 из-за проблемы с последней)

Я действительно не понимаю, почему я получаю ошибку выше, поскольку sqlite3-ruby, очевидно, там.

Трассировка стека при ошибке:

0   /opt/ruby-enterprise-1.8.7-2011.03/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/spec_set.rb    87  in `materialize'
1   /opt/ruby-enterprise-1.8.7-2011.03/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/spec_set.rb    81  in `map!'
2   /opt/ruby-enterprise-1.8.7-2011.03/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/spec_set.rb    81  in `materialize'
3   /opt/ruby-enterprise-1.8.7-2011.03/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/definition.rb  90  in `specs'
4   /opt/ruby-enterprise-1.8.7-2011.03/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/definition.rb  135     in `specs_for'
5   /opt/ruby-enterprise-1.8.7-2011.03/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/definition.rb  124     in `requested_specs'
6   /opt/ruby-enterprise-1.8.7-2011.03/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/environment.rb     23  in `requested_specs'
7   /opt/ruby-enterprise-1.8.7-2011.03/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/runtime.rb     11  in `setup'
8   /opt/ruby-enterprise-1.8.7-2011.03/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler.rb     107     in `setup'
9   /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/utils.rb  326     in `prepare_app_process'
10  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/rack/application_spawner.rb   155     in `initialize_server'
11  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/utils.rb  572     in `report_app_init_status'
12  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/rack/application_spawner.rb   153     in `initialize_server'
13  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/abstract_server.rb    204     in `start_synchronously'
14  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/abstract_server.rb    180     in `start'
15  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/rack/application_spawner.rb   128     in `start'
16  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/spawn_manager.rb  253     in `spawn_rack_application'
17  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/abstract_server_collection.rb     132     in `lookup_or_add'
18  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/spawn_manager.rb  246     in `spawn_rack_application'
19  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/abstract_server_collection.rb     82  in `synchronize'
20  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/abstract_server_collection.rb     79  in `synchronize'
21  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/spawn_manager.rb  244     in `spawn_rack_application'
22  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/spawn_manager.rb  137     in `spawn_application'
23  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/spawn_manager.rb  275     in `handle_spawn_application'
24  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/abstract_server.rb    357     in `__send__'
25  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/abstract_server.rb    357     in `server_main_loop'
26  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/lib/phusion_passenger/abstract_server.rb    206     in `start_synchronously'
27  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/helper-scripts/passenger-spawn-server   99 

Edit:

Это мой файл passenger.conf.

LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.6
PassengerRuby /opt/ruby-enterprise-1.8.7-2011.03/bin/ruby
PassengerMaxPoolSize 2

Ответы [ 2 ]

3 голосов
/ 12 апреля 2011

Похоже, у вас установлены две версии (ruby-enterprise-1.8.7 и 1.9.1) среды выполнения ruby.Убедитесь, что вы установили драгоценный камень sqlite3-ruby (и пассажирский) в одно и то же время выполнения.

Вы установили пассажирский драгоценный камень в среде выполнения 1.9.1 ruby, однако для PassengerRuby установлено значение 1.8.Я думаю, ты не должен этого делать.Установите его на 1.9.1.И убедитесь, что вы запускаете пакетную установку (в папке вашего проекта rails) с ruby ​​1.9.1, чтобы он установил все необходимые гемы в среду выполнения 1.9.1.

PassengerRuby /path/to/1.9.1/here/bin/ruby

Если вы хотите управлять различными версиямиРубиновое время выполнения с легкостью, я предлагаю посмотреть на RVM

1 голос
/ 12 апреля 2011

Ваша конфигурация Пассажира кажется неправильной ... вы предоставляете PassengerRoot драгоценного камня пассажира в своей вселенной 1.9.1, но указываете на PassengerRuby во вселенной 1.8.7.

Я бы посоветовал перекомпилировать модуль Apache пассажираиз Ruby 1.9 с помощью passenger-install-apache2-module и измените свою конфигурацию в соответствии с инструкциями установщика.

Кроме того, если вы используете Rails, я предлагаю вам обновить до 1.9.2 или придерживаться 1.8+0,7.Rails плохо работает с Ruby 1.9.1.

...