Разверните приложение Rails на Bluehost

Я пытаюсь развернуть свое приложение RoR в Bluehost, но у меня возникли проблемы. Я хочу, чтобы мое приложение Rails было доступно из домена верхнего уровня, то есть было доступно, когда кто-то обращается к URL-адресу моего веб-сайта. Я следил за несколькими учебниками и пробовал несколько подходов, но я все еще не понял. Когда я обращаюсь к своему URL-адресу (http://hotelelcidacapulco.com/), я получаю следующее сообщение: Нет такого файла или каталога - config.ru

Я предполагаю, что это должна быть проблема Symlink. Я пробовал разные символические ссылки, но я думаю, что это должно быть:

ln -s ~/path/appName/public appname примерно так: ln -s ~/rails_apps/ElCid/public ElCid

Но я снова получаю сообщение об ошибке: Нет такого файла или каталога - config.ru

Опять же, я определенно не эксперт, но я предполагаю, что это как-то связано с символической ссылкой. Я много боролся и был бы очень признателен за помощь, так как мне нужно запустить его как можно скорее.

Вот мои файлы:

/home3/hotelelc/public_html/.htaccess Файл:

SetEnv GEM_HOME /home3/hotelelc/ruby/gems

<IfModule mod_passenger.c>
Options -MultiViews
PassengerResolveSymlinksInDocumentRoot on
RailsEnv production
RackBaseURI /
SetEnv GEM_HOME /home3/hotelelc/ruby/gems
</IfModule>

AddHandler fcgid-script .fcgi
RewriteEngine On
RewriteRule ^$ index.html [QSA]
RewriteRule ^([^.]+)/!$ $1.html [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
ErrorDocument 500 "Application error Application failed to start properly"

/home3/hotelelc/.bashrc Файл:

export HPATH=/home3/hotelelc/
export GEM_HOME=$HPATH/ruby/gemsexport GEM_HOME=$HPATH/ruby/gems
export GEM_PATH=$GEM_HOME:/usr/lib64/ruby/gems/1.8
export GEM_CACHE=$GEM_HOME/cache
export PATH=$PATH:$HPATH/ruby/gems/bin
export PATH=$PATH:$HPATH/ruby/gems

if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi

Наконец, это мой файл /config/environment.rb:

require File.expand_path('../application', __FILE__)

ElCid::Application.initialize!

ENV['GEM_PATH'] = '/home3/hotelelc/ruby/gems:/usr/lib64/ruby/gems/1.8'

person Sebastian Ruiz    schedule 06.03.2012    source источник
comment
Разве RackBaseURI не должен быть /public?   -  person simonmorley    schedule 30.12.2012
comment
Я попробовал RackBaseURI как /public, и он сломался. Просто заметка для будущих читателей.   -  person David R.    schedule 27.02.2014
comment
Я использовал Bluehost, и мне это нравится, но я не думаю, что это будет стоить того за все проблемы. Проверьте что-то вроде digitalocean.com, если вас не устраивает стоимость.   -  person Jordan    schedule 25.05.2014


Ответы (1)


Попробуйте переместить файл .htaccess в общедоступный каталог вашего приложения вместо public_html. Я считаю, что это будет app/public/.htaccess. Надеюсь, поможет!

Да, я знаю, что это старый вопрос, но для будущих читателей.

person derek_duncan    schedule 16.04.2013