Main Contents

Compilation de PHP 5 et Apache 2

février 15, 2008

Allez, un premier tuto sur la compilation de ces 2 outils indispensables. On va installer Apache 2 et PHP 5 en tant que module avec les options classiques sur un serveur sous Debian.

Installer Apache

On récupère les sources :
# wget http://apache.crihan.fr/dist/httpd/httpd-2.2.8.tar.gz

On décompresse puis on configure :
# tar xzvf httpd-2.2.8.tar.gz
# cd httpd-2.2.8

Pour permettre le chargement dynamique de PHP, le serveur Apache doit être compilé avec le support Dynamic Shared Object (DSO). Cette fonctionnalité peut être activée en ajoutant l’option –enable-so :

# ./configure --prefix=/usr/local/apache2 --enable-so

On compile et on installe :

# make && make install

Voilà Apache 2 installé dans le répertoire /usr/local/apache2.

Installer PHP 5

J’ai eu des soucis avec php 5.1.6, je n ai pas réussi à le faire fonctionner avec apache 2.2.8. Je vous conseille donc de prendre la dernière version. A l’heure actuelle c’est la 5.2.5. On récupère donc les sources puis on décompresse l’archive.

# wget http://fr2.php.net/distributions/php-5.2.5.tar.gz

# tar xzvf php-5.2.5.tar.gz
# cd php-5.2.5

L’étape de configuration de PHP est très importante. C’est là que vous allez définir les modules dont vous allez avoir besoin. Voilà un exemple :

# ./configure --with-apxs2=/usr/local/apache2/bin/apxs --enable-dom --with-iconv --enable-mbstring=all --enable-mbregex --with-mysql --with-gd --with-zlib

  • L’argument –with-apxs2 indique à PHP où se trouve le répertoire d’installation d’Apache 2 et le script apxs qui gère les extensions.
  • L’argument –enable-dom permet d’utiliser l’API DOM de php5 pour utiliser des documents XML.
  • L’argument –with-iconv permet de convertir des fichiers vers différent jeux de charactères.
  • L’argument –enable-mbstring d’utiliser différent jeux de charactères.
  • L’argument –enable-mbregex active les fonctions regex.
  • L’argument –with-mysql active l’extension MySQL regular. Dans PHP 5.0, elle n’est pas active par défaut (contrairement à PHP 4.0) et doit être nommée explicitement dans configure pour être activée.
  • L’argument –with-gd active les fonctions de manipulation d’images.
  • l’argument –with-zlib active la bibliothèque de compression zlib pour la compression de données à la volée.

D’autres options et extensions sont également possibles. Pour obtenir une liste complète, exécutez la commande suivante:

# ./configure --help

Une fois que le script configure a terminé son traitement, vous pouvez compiler et installer PHP.

# make
# make install

Configurer et tester Apache avec PHP

Dernière petite manipulation pour que tout fonctionne, dire à Apache de reconnaitre les fichiers .php et pour cela on va aller ajouter dans le fichier /usr/local/apache2/conf/httpd.conf la ligne suivante :

AddType application/x-httpd-php .php

Enregistrez le fichier, puis démarrez le serveur:

# /usr/local/apache2/bin/apachectl start

Vous pouvez maintenant tester si tout fonctionne. La racine des documents du serveur se trouve la : /usr/local/apache2/htdocs/
Il suffit de créer un fichier PHP avec par exemple le code suivant :

<?php phpinfo(); ?>

Connectez vous sur l’url http://localhost/nom-de-votre-fichier.php et vous devriez voir la page d’informations de PHP.

Catégorie(s): Serveur, Tutorial | Comments (3)

3 Comments

  1. Installation d’un serveur FreeBSD minimal | MacFan mai 12, 2008 @ 11 h 48 min

    […] Installation d’un serveur FreeBSD minimal […]

  2. Matthieu (1 comments) octobre 16, 2008 @ 22 h 58 min

    Tout est clair, nikel. Merci à toi pour ce tuto!

  3. Dominique (1 comments) mars 13, 2012 @ 17 h 04 min

    Merci pour ce tuto. J’y suis presque sauf que la compil de php me donne un libphp5.a et un libphp5.a Qqun a une idée de comment obtenir un libphp5.so? Merci à tous

Leave a comment