Развернуть Rails-приложение на Bluehost - PullRequest
8 голосов
/ 06 марта 2012

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

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

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'

1 Ответ

1 голос
/ 16 апреля 2013

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

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

...