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.