N.B. - Les instructions données ci-dessous sont basées sur des recherches effectuées sur le Net. Je les livre telles qu'elles fonctionnent sur ma configuration (MacBook Pro sous Mac OS X 10.4.10) : elles doivent être adaptées en fonction de votre propre plate-forme. Il est même possible que certaines soient erronées ! Pour rappel, l'objectif principal de ce blog est de centraliser et de me permettre de retrouver facilement différentes infos me permettant de ré-installer ou re-configurer mes différentes machines et applications : si cela peut servir à d'autres, j'en suis très heureux :o)

1ère étape : Apache 2

La dernière version stable d'Apache 2 à ce jour est la 2.2.4, elle est disponible, par exemple, sur le FTP de l'INRIA : ftp://ftp.inria.fr/pub/Apache/httpd/.

Pour l'installation, rien de très compliqué : on décompresse, on configure, on compile et on installe, soit en gros (libre à vous de changer de répertoire et/ou de paramètres).

% cd /tmp
% tar xvfj ~/Desktop/httpd-2.2.4.tar.bz2
% cd httpd-2.2.4
% ./configure --prefix=/usr/local/apache2 --enable-modules=all --enable-mods-shared=all
% make
% sudo make install

NDLR : C'est fou ce qu'elle mouline vite cette nouvelle bécane. Mon G4 est définitivement à la rue sur ce genre de manip' :o)

2ème étape : PHP 5

La dernière version stable à ce jour de PHP est la 5.2.3 disponible ici : http://fr3.php.net/get/php-5.2.3.tar.bz2/from/fr.php.net/mirror.

En gros, on suit la même procédure que pour Apache : décompression, configuration, compilation, test et installation.
Pour info, mes paramètres de configuration n'incluent pas la prise en charge de MySQL, de PostgreSQL ou encore de la librairie GD : ils sont inspirés d'infos trouvées à droite, à gauche sur le Net (cf. les liens en fin de billet), et vous pouvez les adapter en fonction de vos besoins.

% cd /tmp
% tar xvfj ~/Desktop/php-5.2.3.tar.bz2
% cd php-5.2.3
% ./configure \
  --prefix=/usr/local/php5 \
  --with-zlib \
  --with-xml \
  --with-ldap=/usr \
  --enable-cli \
  --with-zlib-dir=/usr \
  --enable-exif \
  --enable-ftp \
  --enable-mbstring \
  --enable-mbregex \
  --enable-dbx \
  --enable-sockets \
  --with-iodbc=/usr \
  --with-curl=/usr \
  --with-apxs2=/usr/local/apache2/bin/apxs
% make
% make test
% sudo make install

Une fois l'installation terminée, il faut ajouter la ligne suivante dans le fichier /usr/local/apache2/conf/httpd.conf après les autres lignes AddType par exemple :

AddType application/x-httpd-php .php .phtml

3ème étape : mod_perl 2

Dans la mesure où l'on utilise la version 2 d'Apache, il convient d'utiliser également la version 2 de mod_perl : cf. http://perl.apache.org/download.
La version stable la plus récente est la 2.0.3, téléchargeable sur cette même page.

Concernant la configuration et l'installation, je vous invite à vous reporter la page suivante : http://perl.apache.org/docs/2.0/user/install/install.html. De mon côté, la procédure suivante semble avoir été la bonne :

% cd /tmp
% tar xvfz ~/Desktop/mod_perl-2.0-current.tar.gz
% cd mod_perl-2.0.3
% perl Makefile.PL MP_AP_PREFIX=/usr/local/apache2
% make
% make test
% sudo make install

Pour info, le make test a généré par mal de lignes d'erreurs ou d'avertissements : disons que je ne vais pas trop m'en soucier pour l'instant, on verra plus tard si ça fonctionne correctement ou pas :-/
De plus, le make install n'a pas mis à jour la fichier httpd.conf d'Apache. Si elle ne figure pas déjà dans votre fichier /usr/local/apache2/conf/httpd.conf, il convient donc d'y ajouter cette ligne (après la ligne LoadModule de PHP, par exemple) :

LoadModule perl_module modules/mod_perl.so

4ème étape : fin des opérations

Bon, tout s'étant à peu près bien passé, on doit pouvoir tester cette nouvelle configuration.
Il faut d'abord s'assurer que l'Apache installé par défaut par Tiger n'est pas en train de tourner : un clic sur le bouton Stop de l'option Personal Web Sharing du panneau System Preferences/Sharing/Services doit permettre d'arrêter le daemon httpd, si besoin. Puis, quelque chose comme ps ax | grep httpd doit permettre de s'assurer que tout est bien arrêté. Ensuite, il faut lancer la version d'Apache nouvellement installée :

sudo /usr/local/apache2/bin/apachectl start

Si aucun message ne s'affiche, c'est qu'a priori tout va bien. Un petit coup d'oeil dans le fichier de logs d'Apache permet de s'en assurer :

% tail /usr/local/apache2/logs/error_log
[Sat Aug 18 15:58:21 2007] [notice] Apache/2.2.4 (Unix) PHP/5.2.3 mod_perl/2.0.3 Perl/v5.8.8 configured -- resuming normal operations

On voit bien apparaître les bonnes versions d'Apache, PHP, mod_perl et Perl : ça semble rouler...

Pour info, pour arrêter Apache 2, on utilise la même commande que plus haut mais avec le paramètre stop, soit :

sudo /usr/local/apache2/bin/apachectl stop

Conclusion

Voilà... Ici s'achève ce premier post sur le couple Tiger & Apache 2. Comme indiqué en introduction, un autre billet suivra pour expliquer comment configurer Apache 2 pour qu'il se comporte comme la version 1.3.33 installée par défaut, et puisse de ce fait être lancé et arrêté via le panneau des préférences systèmes de Tiger : affaire à suivre donc...

Pour plus de détails, vous pouvez vous reporter aux pages suivantes dont je me suis inspiré pour ce post :

Edit: 20/08/2007 @ 15:46 - La ligne de commande ./configure d'Apache 2 a été corrigée et modifiée pour charger tous les modules.

Edit: 30/08/2007 @ 18:06 - La ligne AddType application/x-httpd-php .php .phtml doit être ajoutée au fichier de configuration d'Apache (httpd.conf) pour que les URL PHP soient reconnues.