Nous partons sur l'hypothèse ou l'on a un système à jour, non seulement au niveau du noyau mais également au niveau des ports.
On ouvre donc un terminal en root.
Puis on installe Apache (version 2.2.4 au moment de l'écriture de ce post) depuis les ports FreeBSD:
# cd /usr/ports/www/apache22 # make install... la compilation va prendre un certain temps... bon café...
Une fois la compilation terminé, il faut automatiser le lancement du daemon HTTP au démarrage du serveur. Pour cela il faut ajouter ajouter deux lignes au fichier /etc/rc.conf:
# echo 'apache22_enable="YES"' >> /etc/rc.conf
Il faut ensuite éditer le fichier :
/usr/local/etc/apache22/httpd.conf
pour le faire coller à votre configuration. Il existe un bon nombre de documentations sur le sujet (par exemple: http://httpd.apache.org/docs/2.2/).
# vi /usr/local/etc/apache22/httpd.conf
Vous pouvez tester si votre installation a marché correctement en lancant le serveur Web:
# apachectl start
un problème qui peut arriver est l'erreur au lancement
/usr/local/sbin/apachectl start
cette erreur
httpd: apr_sockaddr_info_get() failed
dans ce cas il faut determiner le host name de la machine par la commande :
hostname
et reporter la valeur trouvée dans le fichier /etc/hosts
vi /etc/hosts
Puis en ouvrant un navigateur sur l'URL de votre serveur: http://<@IpDeVotreServeur>. Vous devrier avoir la page suivante qui s'affiche:
![]()
activer htaccess
vi /usr/local/etc/apache22/httpd.confchanger
AllowOverride None
par
AllowOverride All
Le répertoire racine de votre site Web se trouve:
/usr/local/www/apache22/data/
En l'état actuel de la configuration, votre serveur ne prendra pas en compte le language PHP. Il faut pour cela installer le module PHP (version 5) pour Apache. Pour cela:
# cd /usr/ports/lang/php5 # make install... Ne pas oublier de selectionner "Apache" !!! ...
# cd /usr/ports/lang/php5-extensions
# make install... choisir les extensions voulues ...
cd /usr/local/etc/
# cp php.ini-recommended php.ini... initialisation des variables...
Il faut ensuite configurer Apache pour qu'il prenne en compte PHP. Pour cela éditer le fichier
/usr/local/etc/apache22/httpd.conf
# vi /usr/local/etc/apache22/httpd.conf
Ajouter dans la section ifmodule :
AddType application/x-httpd-php .php
ensuite ajouter dans la section "IfModule dir_module" (au besoin rajouter la section)
DirectoryIndex index.html, index.php
Il ne reste plus qu'a relancer le serveur Apache:
# apachectl stop
# apachectl start
ensuite phpmyadmin
cd /usr/ports/databases/phpmyadmin
make install
editer le fichier :
/usr/local/etc/apache22/httpd.conf
et ajouter :
Alias /phpmyadmin/ "/usr/local/www/phpMyAdmin/"
Options none
AllowOverride Limit
Order Deny,Allow
Deny from all
Allow from 127.0.0.1 .example.com
créer un lien symbolique pour pouvoir accèder à partir du serveur apache à phpmyadmin
ln -s /usr/local/www/phpMyAdmin/ /usr/local/www/apache22/data/phpmyadmin