2013-05-29 9 views
1

Я следил за инструкциями по установке последних версий Ruby на Bluehost и смог получить Ruby-2.0.0-p195 с Rails-4.0.0-rc1. В основном я получаю полную функциональность с возможностью запуска irb и загрузки gem-файлов.Пассажир на Bluehost неверный вариант Ruby

bash [~/rails/sample/config]# ruby -v 
ruby 2.0.0p195 (2013-05-14 revision 40734) [x86_64-linux] 
bash [~/rails/sample/config]# rails -v 
Rails 4.0.0.rc1 
bash [~/rails/sample/config]# which ruby 
/home6/username/ruby/bin/ruby 
bash [~/rails/sample/config]# which rails 
/home6/username/ruby/gems/bin/rails 

Я смог создать пустое приложение, чтобы проверить, работает ли оно. Мои .htaccess Лоос файл, как это:

bash [~/rails/sample/config]# more ~/www/sample/.htaccess 
Options -MultiViews 
PassengerResolveSymlinksInDocumentRoot on 
#Set this to whatever environment you'll be running in 
RailsEnv production 
RackBaseURI/
PassengerAppRoot /home6/username/rails/sample 
SetEnv GEM_HOME /home6/username/ruby/gems 
bash [~/rails/sample/config]# 

Мой файл .bashrc выглядит следующим образом:

bash [~]# more ~/.bashrc 
# .bashrc 

export GEM_HOME=$HOME/ruby/gems 
export GEM_PATH=$GEM_HOME:/usr/lib64/ruby/gem/1.8 
export GEM_CACHE=$GEM_HOME/cache 
export PATH=$HOME/ruby/gems/bin:$PATH 
export PATH=$HOME/ruby/bin:$PATH 
export PATH=$HOME/node/bin:$PATH 

Когда я посещаю мою страницу (www.somedomain.com/sample) я получаю следующее сообщение об ошибке с пассажиром :

Ruby (Rack) application could not be started 

The application has exited during startup (i.e. during the evaluation of config/environment.rb). 
The error message can be found below. To solve this problem, please follow any instructions in the 
error message. 

Error message: Rails 4 prefers to run on Ruby 2.0. You're running ruby 1.8.7 (2012-02-08 MBARI 8/0x6770 
on patchlevel 358) [x86_64-linux], MBARI 0x6770, uby Enterprise Edition 2012.02 Please upgrade to Ruby 
1.9.3 or newer to continue. 

Application root: /home6/username/rails/sample 

Backtrace:  
0 /home6/username/ruby/gems/gems/railties-4.0.0.rc1/lib/rails/ruby_version_check.rb Line 3 in `abort' 
1 /home6/username/ruby/gems/gems/railties-4.0.0.rc1/lib/rails/ruby_version_check.rb Line 3 
2 /home6/username/ruby/gems/gems/railties-4.0.0.rc1/lib/rails.rb Line 1 in `require' 
3 /home6/username/ruby/gems/gems/railties-4.0.0.rc1/lib/rails.rb Line 1 
4 /home6/username/ruby/gems/gems/railties-4.0.0.rc1/lib/rails/all.rb Line 1 in `require' 
5 /home6/username/ruby/gems/gems/railties-4.0.0.rc1/lib/rails/all.rb Line 1 
6 /home6/username/rails/sample/config/application.rb Line 3 in `require' 
7 /home6/username/rails/sample/config/application.rb Line 3 
8 /home6/username/rails/sample/config/environment.rb Line 2 in `require' 
9 /home6/username/rails/sample/config/environment.rb Line 2 
10 config.ru Line 3 in `require' 
11 config.ru Line 3 
12 /home6/username/ruby/gems/gems/rack-1.5.2/lib/rack/builder.rb Line 55 in `instance_eval' 
13 /home6/username/ruby/gems/gems/rack-1.5.2/lib/rack/builder.rb Line 55 in `initialize' 
14 config.ru Line 1 in `new' 
15 config.ru Line 1 

Почему пассажир все еще ищет старый рубин и не видит новую установку? Или это рельсы? Есть ли способ сделать это правильным? Я что-то пропустил?

Любая помощь будет оценена по достоинству.

Pavel.

ответ

0

Это потому, что на сервере не работает Phusion Passenger 4. Несколько версий Ruby поддерживаются только с Phusion Passenger 4.0.0, так же как и поддержка чтения переменных среды из bashrc. На сервере в настоящее время запущена версия 3.x.

+0

Что делать, если я устанавливаю свой собственный пассажир? '# [~] gem установить пассажира Извлечение: пассажир-4.0.5.gem (100%)'. Установка прошла успешно: '[~] # пассажир -v Phusion Passenger версии 4.0.5'. Проход к пассажиру - '[~] #, который пассажир => /home6/имя пользователя/рубин/драгоценный камень/бен/пассажир'. Я имею в виду, что есть люди, которые могут обновить рубины/рельсы по умолчанию до Ruby-1.9.3 и Rails-3.2.x. Я не очень много слышал об этой проблеме, хотя поиск в Google - мой друг. –

+0

Если у вас есть достаточный доступ к системе, вы можете обновить Phusion Passenger. – Hongli

+0

У меня есть только доступ к моей папке пользователя:/home6/username /. Я могу только делать что-то на своем уровне. Например, ruby2.0 работает только в домашних настройках моей папки. У меня есть последняя node.js, установленная на моей стороне. На общем хостинге ни один орган не имеет привилегий root. –

Смежные вопросы