Как развернуть приложение Ruby on Rails через cPanel на общем хосте?

#ruby-on-rails #cpanel #apache-config

#ruby-on-rails #cpanel #apache-config

Вопрос:

Я нахожусь в процессе изучения Ruby on Rails, и все шло гладко — до тех пор, пока я не попытался развернуть одно из своих тестовых приложений в своей учетной записи общего хостинга.

Я использую Host Gator и смог успешно создать новое приложение Ruby on Rails через cPanel и запустить его. Единственная проблема заключается в том, что когда вы создаете новое приложение таким образом, оно заполняет свой каталог пустым приложением — как это было бы rails new app_name локально. Когда я удаляю файлы и папки в этом каталоге и заменяю их своими, затем пытаюсь запустить приложение, cPanel сообщает, что оно запущено на странице подтверждения, но на самом деле оно никогда не запускается. Я также не получаю никаких сообщений об ошибках.

Хост казался довольно озадаченным, заявив, что это должно быть вопросом удаления исходных файлов и папок и их замены, а затем запуска. Приложение отлично работает локально, поэтому я не думаю, что это проблема с кодом. В своем исследовании я наткнулся на Passenger, хотя это выше моего понимания, и может показаться, что вам действительно нужен полный контроль над Apache, чтобы заставить все это работать, включая ssh.

Если это имеет какое-либо значение, приложения, которые я создал локально, были собраны с использованием установки Rails Installer и являются каркасными. Для тестирования я использую минимальное приложение примерно с тремя полями в таблице.

Чего мне не хватает? Будем признательны за любую помощь.

Комментарии:

1. Развертывание приложения Rails в средах общего хостинга, как правило, является кошмаром. Рассматривали ли вы Heroku или Engineeryard?

2. До прошлой недели я был в основном разработчиком PHP, но я хотел расшириться. Все шло гладко, пока я работал на localhost, но это действительно был кошмар. При ОЧЕНЬ медленном продвижении оказывается, что команды, которые я использовал, предназначены для Rails 3, а Host Gator использует более старую версию. Как только я использовал старые команды, я смог создавать такие вещи, как строительные леса. Теперь пытаюсь выяснить, почему я получаю ошибку 404 при попытке получить доступ к страницам, сгенерированным script / generate scaffold.

3. Кроме того, CakePHP может быть плагином RoR, но, черт возьми, это просто работает! лол

4. Просто добавляю свои два цента, внутри rails с общим окружением это кошмар. Подумайте об использовании heroku или engine yard.

5. Когда-то давно я шел по пути cPanel и rails, серьезно, не ходите туда, вы буквально доведете себя до безумия! Поверьте мне, «git push heroku master» — ваш друг.

Ответ №1:

Максимальные поддерживаемые версии на 26/10/2013:

Ruby 1.8.7 RubyGems 1.8.25 Rails 2.3.18

Все, что новее этого, почти гарантированно выйдет из строя, и cPanel amp; WHM не смогут использовать это каким-либо образом, в какой-либо форме.

Мы можем помочь вам удалить существующие установки Ruby on Rails и вернуть их обратно к версиям, поддерживаемым cPanel и санкционированным (Ruby 1.8, RubyGems 1.8 и Rails 2). Это единственное, что мы можем сделать для вас на данный момент.

Если вы хотите использовать какие-либо версии новее этой, то вы не сможете использовать интерфейсы cPanel amp; WHM или инструменты управления для этого — они просто не будут работать. Затем вам придется вручную управлять установкой RoR самостоятельно исключительно через командную строку. Ничто из этого не подпадает под сферу поддержки cPanel.

Ответ №2:

Вы можете использовать http://ndeploy.в котором есть сторонний плагин для интеграции Rails-хостинга через Phsuion Passenger в cPanel.

Ответ №3:

Просто чтобы другие, кто использует Cpanel с rails, знали.

Я смог использовать Cpanel для создания приложения rails, запустить его и выполнить перенаправление всего внутри Cpanel. Ничего не нужно изменять. Для меня это довольно просто.

Поэтому, я думаю, было бы проще выполнить работу по разработке непосредственно на самом сервере.

Не пытались развернуть локально разработанные rails на общий сервер или какие-либо другие как таковые. Но я предполагаю, что мы могли бы создать rails с помощью Cpanel и заменить файлы в созданном каталоге.