Нужен совет по развертыванию моего первого приложения rails на mediatemple (DV) - PullRequest
3 голосов
/ 07 марта 2012

Я пытаюсь развернуть свое первое приложение rails на mediatemple (dv), и мне не повезло.

Я пытаюсь использовать phusion passenger, поэтому я перешел к http://www.modrails.com/videos/passenger.mov и посмотрел руководство по установке этого. Я сделал все без проблем, и когда я указываю на свой ip, я вижу страницу apache, а не мое приложение rails.

Я заметил, что на mediatemple мне пришлось создать файл vhosts.conf и запустить команду для перенастройки моего проекта, чтобы посмотреть на этот файл vhosts.conf. Ссылка - http://kb.mediatemple.net/questions/1621/Why+is+my+vhost+file+not+being+used+by+Apache%3F#dv_40 Для последнего шага я сделал /usr/local/psa/admin/sbin/httpdmng --reconfigure-domain xxx.xx.xx.xx вместо того, чтобы перенастроить все.

Вот как выглядит мой файл vhosts.conf:

LoadModule passenger_module
/usr/local/rvm/gems/ruby-1.9.3-p125/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p125/gems/passenger-3.0.11
PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.3-p125/ruby

<VirtualHost *:80>
      ServerName xxx.xx.xx.xx
      DocumentRoot /var/www/vhosts/myProject/httpdocs    # <-- be sure to point
to 'public'!
      <Directory /var/www/vhosts/myProject/httpdocs>
         AllowOverride all              # <-- relax Apache security settings
         Options -MultiViews            # <-- MultiViews must be turned off
      </Directory>
   </VirtualHost>

Кому-нибудь повезло с развертыванием приложения rails на mt (dv), которое может дать какой-то совет новичку rails?

1 Ответ

8 голосов
/ 02 апреля 2012

Я только что сделал это на моем сервере dv, так что здесь краткий обзор.Я предполагаю, что вы работаете с Ruby 1.9.3 и Rails 3.2 и запускаете все команды ниже от имени root.

На вашем сервере также установлена ​​последняя версия rake и passenger.Если нет, попробуйте:

gem update --system
gem install rake
gem install passenger

Следующий шаг - войти в вашу админ-панель MediaTemple.Нажмите кнопку «Администратор» (не Plesk) для интересующего вас домена и выберите параметр «Root Access and Developer Tools».Установите инструменты разработчика (это займет около 10 минут).

Как только это будет сделано, вставьте ssh на свой сервер и сделайте следующее:

passenger-install-apache2-module

Существует довольно хорошая управляемая установка, поэтому я выигралне вдаваться в подробности здесь.Вам может потребоваться установить некоторые дополнительные зависимости здесь через yum, поэтому внимательно проверьте вывод этого скрипта.

Как только это закончится, перейдите и отредактируйте файл httpd.conf.Это сохраняется под /etc/httpd/conf/httpd.conf.Вы можете добавить следующие строки в конец (обратите внимание, что пути могут отличаться, так как я использую rvm для управления моими установками ruby ​​и наборами гемов).

# Passenger Module for Apache (For Rails apps)
LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p125@rails32/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p125@rails32/gems/passenger-3.0.11
PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.3-p125@rails32/ruby
PassengerDefaultUser root

На этом этапе вы должны быть готовычтобы создать новое приложение rails, удалите все из папки httpdocs и введите следующую команду, войдя в систему как пользователь домена (не root!)

rails new /path/to/httpdocs

Отредактируйте файл vhost.conf (или создайтеновый) в /var/www/vhosts/www.domain.com/conf (вам нужно будет сделать это как root).

ServerName domainname.com
ServerAlias domainname.com
DocumentRoot /var/www/vhosts/domainname.com/httpdocs/public
<Directory "/var/www/vhosts/domainname.com/httpdocs/public">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
RailsEnv development
RailsBaseURI /

И, наконец, выпустить

/usr/local/psa/admin/sbin/httpdmng --reconfigure-domain xxx.xx.xx.xx

и перезапустить apache

/usr/sbin/apachectl -k restart

Так и должно быть!

Эта ссылка действительно помогла мне во всем: http://www.twohard.com/blog/setting-rails-passenger-mediatemple-dv35-servers

...