Awstats
Un petit tutoriel concernant Awstats, cela suppose que vous avez déjà Apache installé sur votre serveur.
Récupérer et décompresser les sources
Il faut récupérer les sources depuis http://awstats.sourceforge.net/#DOWNLOAD (version testé dans ce tutoriel awstats-6.7.tar.gz)
donc pour cela:
cd /usr/local/
wget http://le_lien_pour_telecharger_awstats
décompresser et installer awstats
tar zxvf awstats-6.7.tar.gz
mv awstats-6.7 /usr/local/awstats
chown -R root:www-data /usr/local/awstats
chmod 750 /usr/local/awstats
mkdir /var/cache/awstats
chown www-data:www-data /var/cache/awstats
Configurer Awstats
On pourra prendre les fichiers de configuration par défaut \"maison\" pour ensuite les modifier:
mkdir /etc/awstats
cd /etc/awstats
wget http://manurevah.com/stuff/awstats/awstats.domaine.tld.conf
wget http://manurevah.com/stuff/awstats/include.conf
copier awstats.domaine.tld.conf vers awstats.monsiteamoi.com.conf et faire la même chose pour chaque domaine/site dont il faut faire les statistiques via awstats.
cp awstats.domaine.tld.conf awstats.monsiteamoi.com.conf
puis dans le fichier il faut modifier:
LogFile=\"/var/log/apache/monsiteamoi.com.log\" #le fichier de log qui nous concerne
SiteDomain=\"monsiteamoi.com\" # le nom de domaine
HostAliases=\"www.monsiteamoi.com\"
Mettre a jour les statistiques a heure régulier
Nous allons créer un script qui sera exécuté via crontab.
vi /usr/local/sbin/awstats-cronbin
dans lequel on mets par exemple
#!/bin/bash
perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=monsiteamoi.com
perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=exemple.fr
puis on le rends executable
chmod +x /usr/local/sbin/awstats-cronbin
Créons la tâche planifiée:
echo \"0 6,12,18,22 * * * root /usr/local/sbin/awstats-cronbin\" >> /etc/crontab
Configuration de Apache
Pour voir les statistiques on passe par apache, la configuration qui suit doit donc être ajouté dans apache, soit de manière globale (déconseillé) soit dans un VirtualHost dédié a cette fonction (un peu mieux). Dans cette exemple on va configurer le sous domaine stats.monsiteamoi.com pour consulter les statistiques, cela suppose que vous comprenez suffisamment apache pour adapter ceci a votre installation.
<VirtualHost *:80>
ServerName stats.monsiteamoi.com
DocumentRoot /var/www/html/user/stats.monsiteamoi.com
CustomLog /var/log/apache2/stats.monsiteamoi.com.log combined
# Configuration pour Awstats
<Directory \"/usr/local/awstats/wwwroot\">
Options None
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>
Alias /awstatsclasses \"/usr/local/awstats/wwwroot/classes/\"
Alias /awstatscss \"/usr/local/awstats/wwwroot/css/\"
Alias /awstatsicons \"/usr/local/awstats/wwwroot/icon/\"
ScriptAlias /awstats/ \"/usr/local/awstats/wwwroot/cgi-bin/\"
</VirtualHost>
Aussi, il faut que dans chaque vhost concerné par les stats il y ai (c\'est cela que va lire awstats.domain.tld.conf):
CustomLog /var/log/apache/domain.tld.log combined
puis il faut relancer apache, peut etre tester la configuration avant, toujours plus sympalol.
apachectl configtest
apachectl graceful
Voir les stats
Il suffit de pointer son navigateur vers le VirtualHost configuré plus haut, dans cette exemple c\'est stats.monsiteamoi.com, puis vers le script awstats avec comme argument le domaine dont il faut voir les statistiques. attention la partie config=monsiteamoi.com va chercher dans /etc/awstats un fichier avec le meme nom, prefixé de \"awstats\" et suffixé de \".conf\", donc /etc/awstats/awstats.monsiteamoi.com.conf.
en résumé : http://stats.monsiteamoi.com/awstats/awstats.pl?config=monsiteamoi.com
Sécurité
On peut tout a fait mettre en place une sécurisation par .htaccess ou directement dans la configuration de Apache:
<Files \"awstats.pl\">
AuthUserFile /var/www/.htpasswd #s\'assurer de créer un htpasswd quelquepart
AuthGroupFile /dev/null
AuthName \"mdp stp\"
AuthType Basic
require valid-user
AllowOverride AuthConfig
</Files>
je crois que la c\'est fini, comme toujours y\'a moyen de peaufiner tout cela.