Je veux vérifier si les modules mod_headers et mod_expires sont activés ou non sur mon serveur
Existe-t-il un moyen de lister les modules activés/désactivés Apache en utilisant une fonction php, tout comme nous listons les informations php avec la fonction phpinfo ();?
Sur Debian:
user@machine:~$ /usr/sbin/Apache2 -l
La plupart des distributions GNU/Linux:
user@machine:~$ /usr/sbin/httpd -l
Ubuntu:
user@machine:~$ ls /etc/Apache2/mods-enabled
Sur Mac OSX:
user@mymac:~$ httpd -l
Sur Win 7 (64 bits):
C:\Users\myuser>"\Program Files (x86)\Apache Software Foundation\Apache2.2\bin\httpd.exe" -l
Essayez ces commandes à partir d'une fenêtre de terminal dans tout sauf Windows, qui utilisera CMD à la place.
Toutes les réponses ci-dessus sont fausses. Utilisez plutôt:
apachectl -t -D DUMP_MODULES
ou
apachectl -M
Sur Ubuntu, vous pouvez voir la liste des modules activés ici,
/etc/Apache2/mods-enabled
Certaines versions de PHP/Apache affichent tous les modules chargés dans phpinfo () sous "Modules chargés".
La réponse de Speeve montre compilée dans des modules (x6 sur mon système):
echo system('/usr/sbin/Apache2 -l');
Vous aurez également besoin de voir vos modules activés (x36 pour moi):
echo system('ls /etc/Apache2/mods-enabled/');
Pour obtenir la liste des modules désactivés, exécutez cette commande puis biffez tous les modules activés:
echo system('ls /etc/Apache2/mods-available/');