Serveur Apache + PHP sur FreeBSD
Rédigé par Xavier - -
Cet article va surtout me servir de pense-bête, pour pouvoir me rappeler plus tard de la procédure. Je dispose d'un serveur FreeBSD virtualisé (KVM), installé depuis le dvd de manière classique.

Logiciels
- FreeBSD-8.2
- Apache 2.2
- PHP 5.3
Prérequis
- FreeBSD connecté à internet
- Bases Apache, VirtualHost
- Savoir utiliser vi
Installation de Apache
Lancer l'installation d'apache22 depuis les ports, catégorie www:
# cd /usr/ports/www/apache22 # make config
Les choix proposés par défaut sont corrects.

Lancer la compilation/installation:
# make install
La compilation est trèès longue, et beaucoup de dépendances sont requises. Les options proposées par défaut sont généralement correctes. Lorsque la compilation est terminée, il faut ouvrir le /etc/rc.conf et ajouter:
apache22_enable="YES"
Afin d'autoriser le lancement un peu plus tard.
Installation de PHP
# cd /usr/ports/lang/php5 # make config
N'oubliez pas de cocher "Build Apache Module".
# make install

Ensuite il va falloir compiler les extensions de PHP...
# cd /usr/ports/lang/php5-extensions # make config
Là à vous de voir... mais il est recommandé de cocher bz2, gd, zip et zlib. Vous pouvez décocher tout ce qui touche à sqlite si vous n'en avez pas besoin.
# make install
Configuration
Pour avoir le support de PHP, il faut rajouter quelques lignes au fichier de configuration de apache. Il se trouve dans /usr/local/etc/apache22/httpd.conf. Mais pour faire plus propre, on va créer un fichier "php.conf" dans le sous dossier "Includes". Ce fichier de config sera interprété par Apache comme si il était dans le httpd.conf.
# nano /usr/local/etc/apache22/Includes/php.conf
Dedans, copier ce code.
Ensuite, nous allons créer un hôte virtuel (virtual host). C'est assez simple et cela fait plus "propre" que d'utiliser la config par défaut...
Donc commencez par créer un répertoire "vhost" dans lequel nous allons mettre nos paramètres.
# cd /usr/local/etc/apache22 # mkdir vhost # cd vhost # nano site
Dedans, copier ce contenu.
Notre site va "écouter" sur le port 80 (http par défaut) et devra être placé dans /usr/local/srv/site que vous allez créer et lui donner les bons droits pour que Apache puisse le lire:
# mkdir /usr/local/srv/site # chown -R www:www /usr/local/srv/site
Allez dans le httpd.conf et ajoutez:
Include /usr/local/etc/apache22/vhost/*
Comme ça, Apache ira lire le fichier de config pour notre vhost que nous venons de créer. Vous pouvez maintenant lancer Apache:
# /usr/local/sbin/apachectl start
Pour vérifier que Apache+PHP fonctionnent, créez un phpinfo que vous placerez dans /usr/local/srv/site/

Et voilà!