Lors de l'installation de redmine, le serveur http par défaut est webrick. Celui-ci n'est pas taillé pour la production, et il est recommandé d'utiliser une autre solution : soit Mongrel, soit Apache avec le module mod_passenger, qui permet d'exécuter des applications Rails.
C'est cette solution que nous allons détailler ici.
On suppose que Redmine est déjà installé, ainsi qu'un serveur apache, et que tout ceci se fait sur une Debian ou Ubuntu.
Compilation et installation du module
# apt-get install ruby1.8-dev libcurl4-openssl-dev libssl-dev # apt-get install apache2-prefork-dev libapr1-dev libaprutil1-dev # gem install passenger
A ce stade on peut vérifier que passenger est installé avec la commande
# gem list
On installe alors le module apache :
# /var/lib/gems/1.8/gems/passenger-3.0.11/bin/passenger-install-apache2-module
Paramétrage du module pour Apache
On va ajouter 2 fichiers pour le chargement du module : passenger.load et passenger.conf.
# cd /etc/apache2/mods-available # echo 'LoadModule passenger_module /var/lib/gems/1.8/gems/passenger-3.0.11/ext/apache2/mod_passenger.so' > passenger.load # echo 'PassengerRoot /var/lib/gems/1.8/gems/passenger-3.0.11' > passenger.conf # echo 'PassengerRuby /usr/bin/ruby1.8' >> passenger.conf
Puis on charge le module passenger et on relance apache :
# a2enmod passenger # /etc/init.d/apache2 restart
Configuration du VirtualHost
On va créer un fichier /etc/apache2/sites-available/redmine :
<VirtualHost *:80> ServerName redmine.mondomaine.com DocumentRoot /var/www/redmine/public <Directory /var/www/redmine/public/> AllowOverride all Order allow,deny allow from all Options -MultiViews </Directory> ErrorLog ${APACHE_LOG_DIR}/error_redmine.log LogLevel warn CustomLog ${APACHE_LOG_DIR}/access_redmine.log combined </VirtualHost>
On active ensuite le site, et on relance le serveur http :
# a2ensite tracker # /etc/init.d/apache2 reload
A ce stade, l'accès à l'URL http://redmine.mondomaine.com doit fonctionner.
Et comme je suis sympa avec vous, j'ai mis tout celà (jusqu'à la création du Virtualhost), dans un shell (disponible dans le .zip en pièce jointe).