Ruby on Rails rodando no Apache com Passenger

Antes de mais nada devo lembrar que nosso apache já está rodando e funcionando com PHP e que já fizemos a instalação do Ruby on Rails usando RVM . Outra coisa que devo lembrar é que foi muito fácil. Agora sim hands on.

Indo para o Home

cd ~/

Instalamos a Gem Passenger

gem install passenger

Instalamos o módulo do apache 2 seguindo os passos

passenger-install-apache2-module -a

Criamos um arquivo de configuração no apache…

sudo vim /etc/httpd/conf.d/passenger.conf

… com o conteúdo que o comando de instalação do módulo do apache retornou, no nosso caso:

LoadModule passenger_module /home/wsilva/.rvm/gems/ruby-1.9.3-p194/gems/passenger-3.0.12/ext/apache2/mod_passenger.so
PassengerRoot /home/wsilva/.rvm/gems/ruby-1.9.3-p194/gems/passenger-3.0.12
PassengerRuby /home/wsilva/.rvm/wrappers/ruby-1.9.3-p194/ruby

Pronto está feito. Só reiniciar o apache:

sudo service httpd restart

Criamos um projeto de teste no diretório do apache (seu usuário tem que ter permissão de escrita)

cd /var/www/html
rails new testandoapache

Criamos um VirtualHost para testar a aplicação:

sudo vim /etc/httpd/conf.d/vhost-testandoapache.inet.conf

Com o conteúdo:

<VirtualHost *:80>
    ServerName testandoapache.inet
    DocumentRoot /var/www/html/testandoapache/public
    <Directory /var/www/html/olarails/testandoapache>
        AllowOverride all
        Options -MultiViews +Indexes
    <Directory>
    RailsEnv development
    CustomLog /etc/httpd/logs/testandoapache.inet.log combined
    ErrorLog /etc/httpd/logs/testandoapache.inet.error.log
<VirtualHost>

Reiniciamos novamente o apache:

sudo service httpd restart

Alteramos o arquivo de host para apontar para o domínio usado no Virtual Host:

sudo vim /etc/hosts

Adicionando a linha abaixo no final do arquivo:

127.0.0.1           testandoapache.inet

Pronto, abra o seu navegador e acesse http://testandoapache.inet

A página que carrega tem conteúdo estático, clicando em About your application’s environment você vai ver as informações pertinentes a sua aplicação que foram geradas pelo ruby on rails.

Té mais