Tél. 888.519.8529 (Sans frais) | Accueil | Gamme | Apropos | Nous joindre | English

Guide d'installation de statistiques web Awstats sur Debian

1 octobre 2007

Ce guide vous apprendra la base sur comment Abludo a configuré les statistiques pour sites web Awstats sur notre serveur linux Debian. Awstats est un logiciel libre extraordinaire que vous pouvez télécharger gratuitement à partir de leur site web. Avant de commencer, veuillez noter que nous avons installé "sudo" pour faciliter l'éxécution sous l'usager root. Ceci n'est pas une configuration standard pour Debian, c'est le style Ubuntu. Quand vous voyez "sudo" savez que vous devez exécuter la commande comme "root", en utilisant "su" (super user) par exemple.

Ceci étant un guide spécifique à Debian, vous pouvez utiliser la fonctionalité utilile "apt" qui fait la gestion des "packages" et va chercher et installe les fichiers du programme automatiquement. Cette commande devrait aussi fonctionner dans Ubuntu car cette distro est basé sur Debian, par contre certains chemins ne seront pas les mêmes. À partir de la ligne de commande, vous pouvez utiliser apt-get ou aptitude; à partir de l'environnement graphique x-windows vous pouvez utiliser synaptic. Voici comment obtenir les fichiers automatiquement:

sudo apt-get awstats

Cette commande ne vous donnera aucune information sur l'emplacement des fichiers, donc il faudra faire une recherche rapide sur votre système. La commande "locate" sur Debian n'est pas très puissante, donc on recommande que vous faites une mise-à-jour et installez "slocate" qui est par défaut sur Ubuntu (sudo apt-get slocate). Une fois que vous l'avez, exécutez ces deux commandes. La première est pour mettre à jour la base de données qui content la liste de tous les fichiers sur votre machine (ceci prendra quelques minutes), la deuxième est pour trouver le fichier en question qu'on a de besoin. Si vous pouvez pas utiliser "locate" pour une raison tel, ne vous en faites pas, vous la trouverez probablement ici: /usr/local/awstats/awstats_configure.pl

locate -u
locate awstats_configure.pl

Maintenant vous pouvez procéder à l'assistant d'installation awstats. Pour ce faire exécutez la commande suivante, et notez le résultat:

Warning: AWStats standard directory on Linux OS is '/usr/local/awstats'.
If you want to use standard directory, you should first move all content
of AWStats distribution from current directory:
/usr/share/doc/awstats/examples
to standard directory:
/usr/local/awstats
And then, run configure.pl from this location.
Do you want to continue setup from this NON standard directory [yN] ?

Vous alez vouloir répondre "non" à cette question. Déplacez-là plutôt dans l'emplacement recommandé avec cette commande. Je ne sais pas exactement pourquoi elle n'a pas été placé là par Debian.

sudo mv examples /usr/local/awstats

Avant d'exécuter l'assistant de nouveau, vous devez connaître l'emplacement du fichier httpd.conf parcequ'elle vous sera demandée. Voici la commande pour trouvez ce fichier (au cas ou vous ne l'aviez pas deviné) ainsi que l'emplacement par défaut au cas ou vous n'avez tourjours pas la possibilité d'utiliser "locate". Finalement, la dernière commande pour montre simplement comment exécuter l'assistant, et le resultat donné. Portez attention aux réponses aux questions et repondez de la même façon.

locate httpd.conf
/etc/apache2/httpd.conf

sudo perl awstats_configure.pl

 ----- AWStats awstats_configure 1.0 (build 1.6) (c) Laurent Destailleur -----
This tool will help you to configure AWStats to analyze statistics for
one web server. You can try to use it to let it do all that is possible
in AWStats setup, however following the step by step manual setup
documentation (docs/index.html) is often a better idea. Above all if:
- You are not an administrator user,
- You want to analyze downloaded log files without web server,
- You want to analyze mail or ftp log files instead of web log files,
- You need to analyze load balanced servers log files,
- You want to 'understand' all possible ways to use AWStats...
Read the AWStats documentation (docs/index.html).
 -----> Running OS detected: Linux, BSD or Unix -----> Check for web server install
 Enter full config file path of your Web server.
Example: /etc/httpd/httpd.conf
Example: /usr/local/apache2/conf/httpd.conf
Example: c:Program filesapache groupapacheconfhttpd.conf
Config file path ('none' to skip web server setup):
> /etc/apache2/httpd.conf


  Add 'Alias /awstatsclasses "/usr/local/awstats/wwwroot/classes/"'
  Add 'Alias /awstatscss "/usr/local/awstats/wwwroot/css/"'
  Add 'Alias /awstatsicons "/usr/local/awstats/wwwroot/icon/"'
  Add 'ScriptAlias /awstats/ "/usr/local/awstats/wwwroot/cgi-bin/"'
  Add '<Directory>' directive
  AWStats directives added to Apache config file.
-----> Need to create a new config file ?

Do you want me to build a new AWStats config/profile
file (required if first install) [y/N] ? y
-----> Define config file name to create

What is the name of your web site or profile analysis ?
Example: www.mysite.com
Example: demo
Your web site, virtual server or profile name:

> www.mywebsite.com
-----> Define config file path
In which directory do you plan to store your config file(s) ?
Default: /etc/awstats
Directory path to store config file(s) (Enter for default):
>
-----> Create config file '/etc/awstats/awstats.www.mywebsite.com.conf'
Error: Failed to open '/usr/local/awstats/wwwroot/cgi-bin/awstats.model.conf' for read.


On s'est rendu un peu plus loin, mais des problèmes persistent. L'assistant ne peut pas trouver le fichier qu'il recherche car il est dans un fichier zippé nommé "awstats.model.conf.gz". Voici comment vous la dézippez, et la déplacez vers l'endroit approprié (encore, pourquoi il était dans une archive zippé on ne sait pas, apt n'as pas fait son bon travail habituel dans ce cas ci, mais normalement c'est un excéllent logiciel):

cd /usr/local/awstats
sudo gunzip awstats.model.conf.gz
sudo mkdir wwwroot
cd wwwroot
sudo mkdir cgi-bin
cd ..
sudo mv awstats.model.conf ./wwwroot/cgi-bin/awstats.model.conf


C'est le moment d'exécuter cette vieille commande encore une fois. La revoici (si vous ne la savez pas par coeur) le la balance du résultat (pour voir la partie du début, regardez ci-haut).

sudo perl awstats_configure.pl


[...]

-----> Create config file '/etc/awstats/awstats.www.mywebsite.com.conf'
Config file /etc/awstats/awstats.www.mywebsite.com.conf created.


-----> Add update process inside a scheduler
Sorry, configure.pl does not support automatic add to cron yet.
You can do it manually by adding the following command to your cron:
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.mywebsite.com


Or if you have several config files and prefer having only one command:
/usr/local/awstats/tools/awstats_updateall.pl now


Press ENTER to continue...


A SIMPLE config file has been created: /etc/awstats/awstats.www.mywebiste.com.conf
You should have a look inside to check and change manually main parameters.
You can then manually update your statistics for 'www.mywebsite.com' with command:


> perl awstats.pl -update -config=www.mywebsite.com
You can also read your statistics for 'www.mywebsite.com' with URL:
> http://localhost/awstats/awstats.pl?config=www.mywebsite.com


Press ENTER to finish...

Vous avez peut-être apperçu que l'assistant a dit "je ne peut pas crée un job cron". C'est important car awstats doit être exécuté quotidiennement pour garder les statistiques à jour, cecu ne se fera pas automatiquement. Expliquer comment configurer une telle tâche cédulé dépasse les limites de ce guide. Mais visitez la page principale de guides pour voir si on en a pas écrit un depuis. On vous montrera toutefois comment configurer votre serveur apache de la bonne manière. Mais avant qu'on puissent faire cela, il y a un autre fichier qu'on considère mal placé. Exécutez la commande suivante pour le déplacer au bon endroit:

cd /usr/lib/cgi-bin
sudo mv awstats.pl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl

Utilisez votre éditeur favori en mode root, et changez les lignes suivantes dans /etc/apache2/apache2.conf, sans ces changement les références aux images et css seront brisées. Si vous n'avez pas d'éditeur favori, vous pouvez utiliser "vim". La première ligne est la commande, les autres qui suivent sont les lignes à changer dans le fichier de configuration:

sudo vim /etc/apache2/apache2.conf

Change from Alias /awstatscss "/usr/local/awstats/wwwroot/css/"
to Alias /awstatscss "/usr/share/awstats/css/"
Also change Alias /awstatsicons "/usr/local/awstats/wwwroot/icon/"
to Alias /awstatsicons "/usr/share/awstats/icon/"

On peut finalement tenter de compiler des statistiques. Pour ce faire, exécutez la commande suivant. La première erreur que vous verrez existe car awstats essai d'utiliser son fichier modèle, ne tenez pas compte de cette erreur.

sudo perl /usr/local/awstats/awstats_updateall.pl now

Error: SiteDomain parameter not defined in your config/domain file. You must edit it for using this version of AWStats.Running '"/usr/local/awstats/wwwroot/cgi-bin/awstats.pl" -update -config=default -configdir="/etc/awstats"' to update config default Setup ('/etc/awstats/awstats.conf' file, web server or permissions) may be wrong. Check config file, permissions and AWStats documentation (in 'docs' directory).
Running '"/usr/local/awstats/wwwroot/cgi-bin/awstats.pl" -update -config=www.mywebsite.com -configdir="/etc/awstats"' to update config www.mywebsite.com Update for config "/etc/awstats/awstats.www.mywebsite.com.conf" With data in log file "/var/log/httpd/mylog.log"... Error: Couldn't open server log file "/var/log/httpd/mylog.log" : No such file or directory
Setup ('/etc/awstats/awstats.www.mywebsite.com.conf' file, web server or permissions) may be wrong.
Check config file, permissions and AWStats documentation (in 'docs' directory).

Par contre, la deuxième (vu ci-haut) doit être adressée. Awstats ne peut par trouver le fichier log pour le site! Il y a deux causes de ce problème, premièrement, on n'a jamais dit au programme ou il pouvait trouver ce fichier. Pour réglér ce problème, editez votre fichier de configuration et changez la ligne ou le fichier log est spécifié:

vim /etc/awstats/awstats.www.mywebsite.com.conf
LogFile="/var/log/apache2/mywebsite.access.log"

Encore une fois, comment configurer un le site web lui même dans apache est au-delà des limites de ce guides. Nous devons supposer que vous avez déjà configurer le site comme "virtual host". Ceci étant le cas, vous devriez savoir ou placer les deux directives suivantes dans le fichier de configuration d'Apache.

ErrorLog /var/log/apache2/mywebsite.error.log
CustomLog /var/log/apache2/mywebsite.access.log combined

Donc vous savez aussi que tout changement demande un rechargement.

sudo /etc/init.d/apache2 reload

Maintenant visitez votre site au moins une fois pour qu'il y ait quelque chose dans le fichier log. Vous pouvez maintenant exécuter cette commande de nouveau et tout devrait bien fonctionner.

sudo perl /usr/local/awstats/awstats_updateall.pl now

J'espère sincèrement que ce guide vous a été utile. Si vous croyez avoir trouver une erreur, ou que le document manque une information importante, SVP veuillez nous rejoindre.

© Droits d'auteur 2009 Abludo conception de sites web