Installation d'awstats
Installation
aptitude install awstats
Configuration d'un hôte
Créer un fichier dans /etc/awstats
portant un nom de la forme awstats.www.guim.info.conf
:
/etc/awstats
SiteDomain="www.guim.info"
LogFile="/var/log/apache2/www.guim.info.access.log"
LogFormat=1
HostAliases="www.guim.info guim.info 12.34.56.78"
DirData="/var/lib/awstats"
DirIcons="/awstats-icon"
DNSLookup=1
SkipHosts="127.0.0.1 REGEX[^192\.168\.] localhost 12.34.56.78"
DefaultFile="index.php"
Lang="fr"
#StyleSheet="/aws/awstats_bw.css"
LoadPlugin="hostinfo"
Droits pour awstats
chmod 755 /var/log/apache2
chmod 644 /var/log/apache2/*
Initialisation de la base
Dans le cas où le serveur web vient juste d'être mis en activité :
sudo -u www-data /usr/lib/cgi-bin/awstats.pl -config=www.guim.info
Si le serveur est en activité depuis plusieurs mois (il y a plusieurs fichiers de log), il faut traiter les anciens fichier de log.
Voici un script qui concatène les fichier de log en un seul :
#!/bin/sh
SITE=www.guim.info
rm ${SITE}.log
for f in /var/log/apache2/${SITE}.access.log.*.gz
do
echo $f
zcat $f >> ${SITE}.log
done
cat /var/log/apache2/${SITE}.access.log.1 >> ${SITE}.log
Il suffit de l'exécuter pour générer un fichier contenant tous les logs. Ensuite on modifie le fichier awstats.www.guim.info.conf
pour y indiquer ce fichier de log de façon temporaire :
awstats.www.guim.info.conf
LogFile="/tmp/www.guim.info.access.log"
Puis on lance la commande de mise à jour :
sudo -u www-data /usr/lib/cgi-bin/awstats.pl -config=www.guim.info
Crontab
Dans /etc/cron.d/awstats.www.guim.info
:
/etc/cron.d/awstats.www.guim.info
0,10,20,30,40,50 * * * * www-data [ -x /usr/lib/cgi-bin/awstats.pl -a -f /etc/awstats/awstats.www.guim.info.conf -a -r /var/log/apache/www.guim.info.access.log ] && /usr/lib/cgi-bin/awstats.pl -config=www.guim.info -update >/dev/null