I am a Passenger

246 mots | linux debian ruby rails info |

I am a Passenger

Alors pour un projet en cours qui doit tourner sur Apache et qui est écrit en Rails il m’a fallu mettre en place Phusion Passenger aka mod_rails.

Sur une petite Lenny dans un kvm (cf article précédent) j’ai donc installé les paquets suivants :


# apache et tout le tralala
> sudo aptitude install apache2 apache2.2-common apache2-mpm-prefork apache2-utils libexpat1 ssl-cert
> sudo aptitude install libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd \
	php5-imagick php5-mcrypt php5-memcache php5-mhash php5-mysql php5-pspell php5-snmp \
	php5-sqlite php5-xmlrpc php5-xsl
# ruby
> sudo apt-get install ruby ruby1.8 ruby1.8-dev build-essential libopenssl-ruby
# rubygems venant d'un backport
> sudo echo "deb http://www.backports.org/debian lenny-backports main contrib non-free" >> /etc/apt/sources.list
> sudo apt-get update
> sudo apt-get -t lenny-backports install rubygems1.8
> sudo gem install rails passenger sqlite3-ruby
> sudo -s 
> export PATH=/var/lib/gems/1.8/bin/:$PATH
> passenger-install-apache2-module
# suivre les instructions

# créez une app rails quelque part :
> cd /var/www
> rails test
> rm test/public/index.html
# editez le application_controller.erb :
> vim test/app/controllers/application_controller.rb
# rajouter la methode suivante :
def index
	render :text => "working it iz !"
end
# rajoutez un vhost :
> vim /etc/apache2/sites-available/testapp
<VirtualHost *:80>

  ServerName  yourhost
  ServerAlias www.domain1.com

  DocumentRoot /var/www/test/public

</VirtualHost>
# on active le vhost
> a2ensite testapp
# on active le module rewrite
> a2enmod rewrite
# on redemarre apache2
> /etc/init.d/apache2 restart

Voila ca devrait tourner.

Sources : Installing Apache2 and PHP5 , Installing Passenger with Apache