29.6. cachemgr.cgi

Le gestionnaire de cache (cachemgr.cgi) est un utilitaire CGI permettant d'afficher des statistiques relatives à l'utilisation de la mémoire d'un processus exécutant Squid. Il s'agit également d'un moyen pratique de gérer le cache et d'afficher des statistiques sans se connecter au serveur.

29.6.1. Installation

En premier lieu, un serveur Web fonctionnant sur votre système est requis. Configurez Apache comme indiqué au Chapitre 26, Le serveur Apache HTTP. Pour vérifier si Apache fonctionne déjà, en tant que root entrez la commande rcapache status. Si un message comme celui-ci apparaît :

Checking for service httpd: OK 
Server uptime: 1 day 18 hours 29 minutes 39 seconds   

Apache fonctionne sur la machine. Sinon, entrez rcapache start pour démarrer Apache avec les paramètres par défaut de SUSE Linux. La dernière étape de la configuration consiste à copier le fichier cachemgr.cgi dans le répertoire Apache cgi-bin :

cp /usr/share/doc/packages/squid/scripts/cachemgr.cgi /srv/www/cgi-bin/

29.6.2. ACL du gestionnaire de cache dans /etc/squid/squid.conf

Certains paramètres par défaut du fichier d'origine sont requis pour le gestionnaire de cache. Tout d'abord, deux ACL sont définis, puis les options http_access utilisent ces ACL pour accorder l'accès à partir du script CGI à Squid. La première ACL est la plus importante, car le gestionnaire de cache tente de communiquer avec Squid sur le protocole cache_object.

acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255

Les règles qui suivent donnent à Apache les droits d'accès à Squid :

http_access allow manager localhost
http_access deny manager

Ces règles supposent que le serveur Web et Squid sont exécutés sur la même machine. Si la communication entre le gestionnaire de cache et Squid trouve son origine sur le serveur Web d'un autre ordinateur, incluez une ACL supplémentaire comme dans l'Exemple 29.2, « Règles d'accès ».

Exemple 29.2. Règles d'accès

acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl webserver src 192.168.1.7/255.255.255.255 # webserver IP

Ajoutez ensuite les règles de l'Exemple 29.3, « Règles d'accès » pour autoriser l'accès à partir du serveur Web.

Exemple 29.3. Règles d'accès

http_access allow manager localhost
http_access allow manager webserver
http_access deny manager

Configurez un mot de passe pour que le gestionnaire puisse accéder à davantage d'options, telles que la fermeture du cache à distance ou l'affichage d'informations supplémentaires concernant le cache. Pour cela, configurez l'entrée cachemgr_passwd avec un mot de passe pour le gestionnaire et la liste des options à afficher. Cette liste apparaît dans le cadre des commentaires d'entrée dans /etc/squid/squid.conf.

Redémarrez Squid chaque fois que le fichier de configuration est modifié. Vous pouvez le faire facilement avec la commande rcsquid reload.

29.6.3. Affichage des statistiques

Accédez au site Web correspondant—http://webserver.example.org/cgi-bin/cachemgr.cgi. Appuyez sur continuer et naviguez dans les différentes statistiques. Vous trouverez davantage de détails concernant chaque entrée affichée par le gestionnaire de cache dans les forums aux questions de Squid, à l'adresse http://www.squid-cache.org/Doc/FAQ/FAQ-9.html.