Развертывание рельсов - PullRequest
       6

Развертывание рельсов

1 голос
/ 06 января 2010

В последнее время я играл с рельсами и хотел пройти процесс развертывания, просто чтобы посмотреть, как он работает. Я создал простое приложение с моделью sIngle с эшафот. Я загрузил его на свой сервер и обнаружил, что мне нужно добавить / public к URL, чтобы открыть экран «добро пожаловать на рельсы». Однако, если я попытался получить доступ к своей модели (public / messages), я просто получил ошибку 404. Может кто-нибудь посоветовать мне, что делать?

Мой сервер использует рельсы с fcgi.

Извиняюсь за такой простой вопрос, я не использовал рельсы в прошлом и не до конца уверен, как он работает.

Любой совет приветствуется.

Спасибо.

Ответы [ 3 ]

0 голосов
/ 06 января 2010

настройка рельсов может быть сложной, и она сильно варьируется от хоста к хосту.

но если вы настроили его правильно, вам не нужно указывать / public в своем URL. / public является каталогом по умолчанию. так что если вы ищете файл index.html по умолчанию, который производит rails, он должен быть # domain.com / index.html

Вам необходимо проверить у своего хоста правильный способ загрузки и настройки приложения.

0 голосов
/ 07 января 2010

Вы просто загрузили приложение в каталог своего веб-сайта или используете символические ссылки? Обычно с cgi / fcgi лучше иметь фактическое приложение в каталоге, недоступном через Интернет, и символическую ссылку из вашего public_html / (или как там называется веб-каталог), которая указывает на app / public / каталог. Однако можно заставить его работать без символических ссылок.

Теперь следующая информация является общей / общей и охватывает несколько популярных общих хостов Rails. Тем не менее, вполне возможно, что ваш хост имеет разные настройки. В этом случае было бы очень полезно, если бы вы могли сообщить нам, какой хост вы используете.

Внутри вашего каталога app / public / должен быть файл dispatch.fcgi. Прежде всего, убедитесь, что этот файл есть. Если это так, убедитесь, что файл chmodded в 755 и попробуйте изменить первую строку на:

#!/usr/bin/ruby18

если это:

#!/usr/bin/ruby

(Это может варьироваться в зависимости от вашего хоста.)

В вашем каталоге app / public / также должен быть файл с именем .htaccess. В нем измените следующую строку:

RewriteRule ^(.*)$ /dispatch.cgi?$1 [QSA,L]

до:

RewriteRule ^(.*)$ /dispatch.fcgi?$1 [QSA,L]

Если ни одно из этих изменений не работает, опубликуйте полное содержимое dispatch.fcgi, .htaccess и объясните структуру каталогов вашей учетной записи хостинга. Как указывалось ранее, сообщение о том, какой хост вы используете, определенно будет полезным.

0 голосов
/ 06 января 2010

Возможно, вы захотите развернуть приложение rails с помощью модуля Apache Пассажира (он же mod_rails или mod_rack), это проще и имеет лучшую производительность, чем fcgi.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...