mod_info Affiche une présentation complète de la configuration du serveur Extension mod_info.c info_module

Pour activer mod_info, ajoutez les lignes suivantes à votre fichier httpd.conf.

<Location "/server-info"> SetHandler server-info </Location>

Il est recommandé d'utiliser mod_authz_host à l'intérieur de la section Location afin de restreindre l'accès aux informations de configuration de votre serveur :

<Location "/server-info"> SetHandler server-info Require host example.com </Location>

Une fois cette configuration effectuée, les informations du serveur sont disponibles à l'adresse http://votre-serveur.com/infos-serveur.

Problèmes liés à la sécurité

Une fois mod_info chargé dans le serveur, sa fonctionnalité de gestionnaire est disponible dans tous les fichiers de configuration, y compris les fichiers de configuration des répertoires (par exemple .htaccess). Ceci peut avoir des répercutions en matière de sécurité pour votre site.

En particulier, l'utilisation de ce module peut conduire à la divulgation d'informations sensibles à partir des directives de configuration d'autres modules Apache comme des chemins systèmes, des couples nom d'utilisateur/mot de passe, des noms de bases de données, etc... C'est pourquoi ce module ne doit être utilisé que dans un environnement sous contrôle et toujours avec les plus grandes précautions.

Il est recommandé d'utiliser mod_authz_host pour restreindre l'accès aux informations de configuration de votre serveur.

Contrôle d'accès <Location "/server-info"> SetHandler server-info # Autorisation d'accès depuis le serveur lui-même Require ip 127.0.0.1 # Autorisation d'accès depuis une station de travail du réseau # local Require ip 192.168.1.17 </Location>
Filtrage des informations affichées

Par défaut, les informations affichées comprennent une liste de tous les modules activés, et pour chaque module, une description des directives qu'il accepte, les branchements (hooks) qu'il implémente, ainsi que les directives concernées dans la configuration courante.

Il est possible d'afficher d'autres vues de la configuration en ajoutant un argument à la requête infos-serveur. Par exemple, http://votre-serveur.com/infos-serveur?config affichera toutes les directives de configuration.

?<module-name>
Uniquement les informations relatives au module spécifié
?config
Uniquement les directives de configuration, non triées par module
?hooks
Uniquement la liste des branchements (hooks) auxquels le module est attaché
?list
Une simple liste des modules activés
?server
Uniquement des informations de base sur le serveur
?providers
Liste des fournisseurs disponbles pour votre serveur
Affichage de la configuration au démarrage

Si la directive de configuration define -DDUMP_CONFIG est utilisée, mod_info va envoyer la configuration préinterprétée vers stdout au cours du démarrage du serveur.

httpd -DDUMP_CONFIG -k start

"Préinterprétée" signifie que les directives telles que IfDefine et IfModule sont évaluées et les variables d'environnement remplacées par leurs valeurs. Cela ne représente cependant pas la configuration définitive. En particulier, les fusions ou écrasementsde définitions en cas de directives multiples ne sont pas représentés.

Le résultat est équivalent à celui de la requête ?config.

Limitations connues

mod_info tire ses informations de la configuration interprétée, et non du fichier de configuration original. La manière dont l'arbre de configuration interprété est créé induit quelques limitations :

AddModuleInfo Ajoute des données supplémentaires aux informations de module affichées par le gestionnaire server-info AddModuleInfo nom-module chaîne server configvirtual host

Cette directive permet d'afficher le contenu de chaîne en tant qu'Information supplémentaire interprétée en HTML pour le module nom-module. Exemple :

AddModuleInfo mod_deflate.c 'See <a \ href="http://httpd.apache.org/docs/&httpd.docs;/mod/mod_deflate.html">\ http://httpd.apache.org/docs/&httpd.docs;/mod/mod_deflate.html</a>'