Installer Awstats sur un serveur Apache HTTPd 2.4.3



Installation de Awstats 7.1 sur un serveur Web Debian Squeeze avec Apache 2.4.3 compilé depuis les sources, et PHP 5.4.8 compilé depuis les sources. Pas de CGI nécessaire.

Cette installation et ce paramétrage n’est valable que pour la configuration présentée ci-dessus. Répertoire wwwroot situé dans /usr/local/apache2/htdocs.

Prérequis

Consulter les articles ci-dessous peut être utile avant de commencer l’installation :

Installation

  • Sauvegarde provisoire du httpd.conf
cp /usr/local/apache2/conf/httpd.conf  /usr/local/apache2/conf/httpd.conf.bkp
cd /home
gzip -d awstats-7.1.tar.gz
tar xvf awstats-7.1.tar
cp awstats-7.1/ /usr/local/awstats/
cd /usr/local/awstats/tools/
  • On exécute le script de configuration :
perl awstats_configure.pl
  • Warning: You Apache config file contains directives to write ‘common’ log filesThis means that some features can’t work (os, browsers and keywords detection).Do you want me to setup
Apache to write 'combined' log files [y/N] ? 
-> y

Les actions suivantes sont effectuées :

# 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.

# —–> Update model config file ‘/usr/local/awstats/wwwroot/cgi-bin/awstats.model.conf’
#  File awstats.model.conf updated.

# -----> 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.studios-75.fr
-----> 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):
-> [appuyer sur Enter]
-----> Create config file '/etc/awstats/awstats.www.studios-75.fr.conf'
 Config file /etc/awstats/awstats.www.studios-75.fr.conf created.

-----> Restart Web server with '/etc/init.d/apache restart'

-----> 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.studios-75.fr
Or if you have several config files and prefer having only one command:
/usr/local/awstats/tools/awstats_updateall.pl now
-> [Appuyer sur Enter]
A SIMPLE config file has been created: /etc/awstats/awstats.www.studios-75.fr.conf
You should have a look inside to check and change manually main parameters.
You can then manually update your statistics for 'www.studios-75.fr' with command:
> perl awstats.pl -update -config=www.studios-75.fr
You can also read your statistics for 'www.studios-75.fr' with URL:
> http://localhost/awstats/awstats.pl?config=www.studios-75.fr

[Press ENTER to finish...]
  • Redémarrer Apache
 /etc/init.d/apache2 stop
/etc/init.d/apache2 start

Configuration de Awstats

  • Editer le fichier de configuration Awstats :
nano /etc/awstats/awstats.studios-75.fr.conf

Configuration générale

  • Assigner les bonnes valeurs aux variables suivantes :
    • LogFile : chemin absolu du fichier de log Apache.
      Dans notre cas : /usr/local/apache2/logs/access_log ,
    • LogType : spécifie le type de données à analyser,
      Dans notre cas : W
    • LogFormat : 4 , (défaut : 1)
    • DirIcons : changer le chemin vers le dossier des icones.
      Dans notre cas : /usr/local/awstats/wwwroot/icon ,
    • SiteDomain : indiquer le nom de domaine de type www.studios-75.fr
    • DNSLookup : Mettre à 0 pour desactiver la recherche de noms.
    • DirData : indiquer l’endroit dans lequel enregistrer le fichier de base de données Awstats.
      Dans notre cas : /usr/local/awstats ,
    • AllowToUpdateStatsFromBrowser : 0 (par défaut)
    • AllowFullYearView : 2 (par défaut)
    • et activer quelques options si l’on veut (après avoir lu le fichier README livré avec Awstats, car certains modules peuvent dramatiquement ralentir le serveur … )
    • Pour vérification, mais laissées aux valeurs par défaut :
      • LogSeparator= »  » […]
      • HostAliases= »studios-75.fr www.studios-75.fr 127.0.0.1 localhost »

Options utiles à activer

  • KeepBackupOfHistoricFiles=1 # modifié de 0 à 1 (pour la pérennité des données)

Activer des Plugins

  • Pour vérifier la liste des plugins installés, mais pas forcément activés :
 ls /usr/local/awstats/wwwroot/cgi-bin/plugins
  • Revenir dans le fichier de conf de awstats
nano /etc/awstats/awstats.studios-75.fr.conf
#----------
# PLUGINS
#----------
# PLUGIN: DecodeUTFKeys
# REQUIRED MODULES: Encode and URI::Escape
# PARAMETERS: None
# DESCRIPTION: Allow AWStats to show correctly (in language charset)
# keywords/keyphrases strings even if they were UTF8 coded by the
# referer search engine.
#
LoadPlugin="decodeutfkeys"
# Décommenter la ligne ci-dessus
apt-get install liburi-perl

 Utilisation de AWstats

# Mise à jour la base d’Awstats depuis les Logs d'Apache (optionnel)
perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -config=studios-75.fr -LogFile="/usr/local/awstats/tools/logresolvemerge.pl /usr/local/apache2/logs/access_log* |" -update

/usr/local/awstats/wwwroot/cgi-bin/awstats.pl possède des droits de 644 par défaut.

  • Modifier ces droits à 744 pour que root puisse lancer le programme perl
chmod 744 /usr/local/awstats/wwwroot/cgi-bin/awstats.pl

Générer les pages Web Awstats

  • Créer un dossier stats dans htdocs
mkdir -m744 /usr/local/apache2/htdocs/stats/
perl /usr/local/awstats/tools/awstats_buildstaticpages.pl -config=www.studios-75.fr -lang=fr -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -dir=/usr/local/apache2/htdocs/stats/
  •  Si nous allons sur http://localhost/stats/awstats.www.studios-75.fr.html, nous avons maintenant un beau tableau vide …

Mettre à jour les statistiques dans Awstats

 perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -config=www.studios-75.fr -update
  • Régénérer les pages Web en retapant la ligne de génération des pages pour mettre à jour les données de statistiques:
perl /usr/local/awstats/tools/awstats_buildstaticpages.pl -config=www.studios-75.fr -lang=fr -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -dir=/usr/local/apache2/htdocs/stats/

Nous avons maintenant les statistiques fonctionnelles …

Il suffit maintenant d’inclure un script dans les tâches planifiées pour générer les pages de statistiques une fois par jour …

 

Mises à jour automatiques des statistiques

  • Créer un fichier awstats-update dans un répertoire /scripts et insérer les lignes de mise  jour et régénération des pages :
nano awstats-update
perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -config=www.studios-75.fr -update
perl /usr/local/awstats/tools/awstats_buildstaticpages.pl -config=www.studios-75.fr -lang=fr -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -dir=/usr/local/apache2/htdocs/stats/
  • Mettre les droits sur ce fichier
chmod 755 /scripts/awstats-update
  • Exécuter ce script une fois par jour avec crontab
crontab -e
# ajouter la ligne ci-dessous
# Execute le script awstats-update tous les jours à 22h30
# et redirige le resultat vers une adresse email.
# Cette asctuce evite que le serveur n'envoie le résultat à root@monhostname, qui n'existe pas et qui, du coup, spamme le FAI.
# Attention : exim4 doit être configuré pour que l'envoi de mail fonctionne ...
23 30 * * * /scripts/awstats-update | mail monemail@mondomaine.ext




Retour