Voici comment faire pour créer une log pour les accès interne ( réseau interne ) et une log spécifique pour les accès depuis l’extérieur ( internet ).
1/ Modules
Il faut vérifier que les modules « mod_env.so » et « mod_setenvinf.so » sont présents dans le sous répertoire « modules » de Apache.
Dans le cas contraire si tu possede les sources d’apache, alors il est trés facile de compiler ces deux modules :
Se rendre dans le sous répertoire modules des sources et plus particulièrement dans modules/metadata.
Executer le binaire « apxs » se trouvant dans le repertoire « bin » de ta version apache :
Exemple :
apxs -i -a -c mod_setenvif.c et apxs -i -a -c mod_env.c
ou -i pour installation , -a pour ajout et -c pour compiler.
NB :
Le module mod_env.so : procure le mécanisme pour passer des variables d’environnement à des scripts CGI/SSI.
Le module mod_setenvif.so : permet de définir des variables d’environnement sur la base d’attributs de la requête
S’il ne le fait pas alors copier le(s) module(s) compilé(s) dans le répertoire « modules » de ta version apache.
Dans la partie paramètrage global d’apache du fichier httpd.conf faire le rajout des deux lignes suivantes :
LoadModule env_module modules/mod_env.so.
LoadModule setenvif_module modules/mod_setenvif.so.
2/ Parametrer httpd.conf
Rechercher dans le fichier httpd.conf les lignes qui commencent par : LogFormat.
A la suite rajouter la ligne suivante :
SetEnvIf Remote_Addr ^192\.112\.12 interne
Definition de la variable d’environnement « interne » avec une regex portant sur l’attribut de requête Remote_Addr
Customlog logs/interne_log common env=interne
Pour les Adresses correspondant au sous réseau 192.112.12.
CustomLog logs/externe_log common env=!interne
Pour les Adresses en-dehors du sous réseau.
3/ fini
Après avoir fait les modifications suivantes, il reste à redémarrer Apache.
Sorry, the comment form is closed at this time.