Voila une bonne chose de faite.
Encore un projet qui me trotait dans la tête depuis des mois, avoir un reporting global site par site de tous les domaines hébergés sur le serveur. C'est chose fait grace à Webalizer.
Fonctionnement
- Parcourt tous les fichiers ayant une extension (ex: gougueule.com) présents à la racine du répertoire sites-enabled définis dans Apache 2 (à définir dans $racine)
- Trouve le fichier de log (access) correspondant au site
- Trouve le répertoire racine du site
- Execute la commande webalizer sur le fichier de log trouvé en sortant le résultat à la racine du site hébergé en nommant le rapport avec le nom de domaine du site
Ce répertoire et les fichiers ont des droits insuffisants pour être effacé en FTP par l'utilisateur.
Ce script fonctionne avec des sites définis en VirtualHost en suivant la syntaxe :
<VirtualHost *> DocumentRoot "/racine/des/sites/gougueule/" ServerName www.gougueule.com ServerAlias gougueule.com gougueule.net www.gougueule.net CustomLog /racine/des/logs/des/sites/gougueule.com combined CustomLog /racine/des/logs/de/apache2/access.log combined </VirtualHost>
Pour executer le script, donnez lui les droits d'execution suffisants ou faites tout simple
php webalizer2
Le script doit être éxécuter en tant que root ou équivalent.
Have fnu !
PS : Bientôt une version awstats si j'ai envie :)
