FAQ

 Questions 

  • Paramétrage
    1. J'aimerais remplacer le logo sur la page d'acceuil de W3Perl, quelle est la procédure ?
    2. Je n'ai aucun graphes dans les pages. Quel est le problème ?
    3. Je voudrais que W3Perl sorte ses résultats dans ma langue.
    4. Je voudrais ajouter une image de fond dans mes pages.
  • Installation
    1. Puis je utiliser W3Perl avec mon serveur virtuel ?
    2. Doit-on installer tout le logiciel dans le répertoire cgi-bin ?
    3. J'aimerais installer W3Perl sur mon provider. De quoi ai-je besoin ?
    4. Le fichier de configuration me semble trop complexe pour un débutant comme moi.
    5. Pourriez vous installer le logiciel à ma place ?
    6. Est-il possible d'installer W3Perl sur un PC de base sans aucun serveur Web ?
    7. Avec la version RPM, j'ai le message d'erreur suivant : "Forbidden - You don't have permission to access /cgi-bin/w3perl/confstat.pl on this server". Quel est le problème ?
    8. Pourquoi ne puis-je pas utiliser Fly 2.0.0 ?
  • Fichier de log
    1. J'ai changé le format de mes fichiers de log de CLF vers ECLF.
    2. J'utilisais le format ECLF mais maintenant que j'utilise Squid, je suis revenu au format CLF.
    3. Y-aura-t-il un support pour les fichiers de log FTP ou d'autres types de serveur ?
  • Mise en place
    1. W3Perl est incapable d'ouvrir le fichier de log ...
    2. 'Permission denied' lorsque je lance les stats depuis l'interface Web.
    3. Je ne parviens pas à lancer les stats depuis l'interface Web.
    4. L'activation du reverse dns prend des heures...
  • Sortie
    1. Il y a plusieurs trous dans le texte sur les stats sur les pays. Pourquoi ?
    2. Je ne parviens pas à trouver mon serveur dans les fichiers produits. Pourquoi ?
    3. J'ai choisi de voir l'activité de mon domaine local mais les stats ne me montrent aucune stats au sein de mon domaine.
    4. Cron-pages.pl s'arrête en me prévenant que rien n'a été scanné
    5. Aucun fichier n'est produit.
    6. L'initialisation est très lente (cron-pages.pl)
    7. Je voudrais juste des stats entre deux dates ou je veux des stats sur une journée spécifique.
    8. Le graphe sur les stats quotidiennes ne montrent que les derniers jours alors que je voudrais aller plus en arrière dans le passé.
    9. J'aimerais exclure des stats certains pays.
    10. J'ai des pages JSP sur mon serveur et pourtant je ne les voie pas dans les résultats.
    11. En utilisant l'interface d'admininstration, j'ai un message 'Problem creating directory'.
    12. Je voudrai exclure mon propre robot, quelle est la procédure ?
    13. Les stats ne montrent aucune session trouvé.
    14. Je voudrais voir mes pages php traitées comme des pages html.
    15. Comment activer les stats sur la taille des écrans ?
    16. je n'ai pas d'acces direct aux fichiers de log sur mon provider.
    17. Je ne peux pas utiliser la machine de mon provider pour lancer les stats.
    18. Comment puis-je mettre à jour ma liste noire de spammer ?
    19. J'aimerais rajouter mes propres extensions de fichier qui sont vus comme 'inconnu' dans les sorties.
    20. Certains sites sont vus comme des spammeur alors qu'ils sont dignes de confiance, comment puis je les retirer de cette liste ?
    21. Je voudrais juste rafraichir la page principale des stats.
  • Windows
    1. Est ce que W3Perl fonctionne sous Windows 2000, XP et Vista ?
    2. Je n'ai pas de serveur IIS qui tourne sur ma machine, mais je voudrais avoir les stats à partir des fichiers de log de mon provider
    3. J'ai quelques problèmes à faire tourner W3Perl pour la première fois.
    4. J'utilise le format Microsoft au lieu du format W3C. Comment changer le fichier de configuration fourni pour IIS ?

 Réponses 

Paramétrage

    > J'aimerais remplacer le logo sur la page d'acceuil de W3Perl, quelle est la procédure ?

Cette image est déclarée dans la variable $logo. Le fichier par défaut étant /resources/logo.png, il vous faudra le remplacer par celui de votre choix.

    > Je n'ai aucun graphes dans les pages. Quel est le problème ?

Il manque quelque chose....assurez vous que vous avez bien l'application fly installée quelque part sur votre machine. Vérifiez aussi le chemin que vous avez donné dans votre fichier de configuration.

    > Je voudrais que W3Perl sorte ses résultats dans ma langue.

Les fichiers de traduction sont présents dans le répertoire /resources/lang/. Il suffit de copier le fichier uk.pl dans un autre fichier dont le nom correspond à l'extension du pays (fr pour france, it pour italie...). Ensuite éditez ce fichier et remplacer la deuxième partie de chaque ligne pour votre traduction. Quand tout est prêt, n'oubliez pas de m'envoyer votre fichier pour qu'il puisse être inclus dans la prochaine release.

    > Je voudrais ajouter une image de fond dans mes pages

Au niveau du fichier de configuration, il est possible de paramétrer la couleur du texte, de choisir une image de fond.
Pour cela, dans l'interface d'administration, on peut choisir d'utiliser :
- une URL comme http://www.foo.com/background.gif
- un lien en absolu comme /background.gif
- un fichier déposé dans le répertoire resources de W3Perl

Mais la meilleure solution consiste à modifier la feuille de style w3perl.css

Installation

    > Puis je utiliser W3Perl avec mon serveur virtuel ?

Bien sur. Il suffit de disposer d'un fichier de configuration pour chaque serveur. Au lancement, il faudra specifier quel fichier de configuration le logiciel devra utiliser. Le logiciel n'a pas besoin d'être installé pour chaque serveur virtuel.

    > Doit-on installer tout le logiciel dans le répertoire cgi-bin ?

Non, surtout pas. La documentation ainsi que les fichiers de resouurces doivent absolument être accessibles depuis une URL. Seuls les scripts perl doivent se trouver dans le répertoire cgi. A noter cependant qu'un répertoire cgi n'est pas du tout obligatoire pour utiliser W3Perl.

    > J'aimerais installer W3Perl sur mon provider. De quoi ai-je besoin ?

En premier lieu, vous devez savoir si votre provider fournit un répertoire cgi-bin pour pouvoir lancer des scripts. Ensuite, vous devez connaitre l'emplacement des fichiers de log ainsi que le chemin complet où se trouve votre serveur et enfin si Perl est bien installé sur la machine.
Si cette installation n'est pas possible sur votre provider, vous pouvez toujours l'effectuer en local sur votre propre machine. Dans ce cas, téléchargez les fichiers de log et installez W3Perl en mode locale.

    > Le fichier de configuration me semble trop complexe pour un débutant comme moi.

utilisez l'interface d'adminsitration. Elle est là pour vous simplifier la vie et vous permet autant de fichiers de configuration que vous le désirez. Si certains points vous semblent obscures, n'hésitez pas à m'en faire part pour que je produise plus de documentation. Il faut cependant avoir un serveur Web qui tourne pour utiliser l'interface d'adminsitration.

    > Pourriez vous installer le logiciel à ma place ?

Désolé mais je n'ai pas assez de temps pour satisfaire tout le monde. Si vous rencontrez des problèmes, il y a toujours une aide possible via le forum ou le mail.

    > Est-il possible d'installer W3Perl sur un PC de base sans aucun serveur Web ?

- Windows
En premier lieu, il faut installer W3Perl avec w3perl.exe. L'interface d'administration ne sera pas utilisable car basé sur des cgi (et donc nécessite un serveur web). Donc il vous faudra fabriquer votre fichier de configuration par vous-même. Il est conseillé de se servir du fichier config/config-win.pl comme une base de départ. L'aide se trouve dans /docs/uk/config_manual.html
Pour lancer les stats, lancez 'cron-w3perl.pl -c config-win.pl'. Utilisez l'option '-a' pour l'initialisation et l'option '-e' pour les mises à jour ultérieurs.

- Unix
Décompressez l'archive dans le répertoire de votre choix. Editez le script install.pl et modifiez le pour que le chemin de $pathw3perl pointe sur votre répertoire d'installation (oubliez les autres chemins à renseigner) et lancez le script. Ensuite, éditez un des fichiers de configuration fourni dans le répertoire config et modifiez le comme il vous convient.
Pour lancer les stats, lancez 'cron-w3perl.pl -c <config_file>'. Utilisez l'option '-a' pour l'initialisation et ensuite l'option '-e' pour les mises à jour. (si vous avez activé l'option 'Reverse DNS', votre machine devra étre connecté à Internet afin de pouvoir effectuer des requêtes sur un serveur DNS)

    > Avec la version RPM, j'ai le message d'erreur suivant : "Forbidden - You don't have permission to access /cgi-bin/w3perl/confstat.pl on this server". Quel est le problème ?

Cela signifie que vous n'avez la possibilité d'utiliser de cgi sur votre serveur web ou que ceux-ci n'ont pas été activés. Dans ce deuxième cas, il suffit d'éditer votre fichier httpd.conf et d'ajouter les lignes 'Order allow,deny' suivi de 'allow from all' au niveau de la directive <Directory /var/www/cgi-bin>.

    > Pourquoi ne puis-je pas utiliser Fly 2.0.0 ?

La dernière version de Fly basé sur gd1.8 n'a plus le support pour une exportation en GIF. Fly 1.6.5 est la dernière version officielle qui supporte le format GIF. Néanmoins certaines distribution Linux fournisse une version patchée de Fly 2.0 avec le support GIF.

Fichier de log

    > J'ai changé le format de mes fichiers de log de CLF vers ECLF

Excellente idée ;) Il suffit juste de modifier votre fichier de configuration. Il faudra spécifier le format ECLF au lieu du format CLF !

    > J'utilisais le format ECLF mais maintenant que j'utilise Squid, je suis revenu au format CLF

Squid stocke les statistiques sur les références et les navigateurs dans des fichiers séparés. Il vous faudra donc modifier votre fichier de configuration pour indiquer à W3Perl où ils se trouvent ainsi que leur nom. Les scripts vont continuer à utiliser le format ECLF pour lire les fichiers de log mais vont ignorer les données manquantes.

    > Y-aura-t-il un support pour les fichiers de log FTP ou d'autres types de serveur ?

Le support pour les fichiers de log FTP a été ajouté en février 2007. Les tests ont été effectués avec des serveurs Proftpd et wu-ftpd.
Le support pour SMTP (Mail serveur) été ajouté en mai 2007 avec le support pour des serveurs exim4, postfic et sendmail.
Des demandes de support ont été envoyées pour la gestion des fichiers de log Domino et Firewall.

Mise en place

    > W3Perl est incapable d'ouvrir le fichier de log...

Le fichier de log doit pouvoir être lisible par tous (mais pas en écriture bien sûr !) Demandez gentillement à votre ingénieur système de corriger cela. Un 'chmod 644' sur le fichier de log est suffisant pour utiliser W3Perl.

    > 'Permission denied' lorsque je lance les stats depuis l'interface Web.

Le répertoire de sortie doit être en écriture pour le serveur Web. En principe, l'utilisateur associé au serveur Web a très peu de privilèges pour des raisons de sécurité. Il faut donc créer le répertoire de sortie manuellement et changer ensuite les droits pour permettre au serveur d'écrire dedans.
Un autre problème peut survenir si vous avez lancer les scripts depuis la ligne de commande et qu'ensuite vous désirez lancer les stats depuis l'interface Web. Le compte associé au serveur Web a très peu de privilèges et donc ne pourra pas écrire sur des fichiers crées par un utilisateur.

    > Je ne parviens pas à lancer les stats depuis l'interface Web

Si votre navigateur vous renvoie un script au lieu de le lancer, cela signifie qu'il y a eu une erreur durant l'execution. Vérifiez que les modules perl que vous avez activés sont bien installés. Lancez le script check_modules.pl manuellement pour controle. Ce problème a été réglé dans la version 2.994

    > L'activation du reverse dns prend des heures...

L'interrogation d'un serveur DNS peut prendre plusieurs secondes pour chaque adresse IP. Pour améliorer les choses, vous pouvez utiliser le module geo::ip qui est en fait un fichier local de reverse dns. Il est possible également d'utiliser des outils comme jdresolve ou fastresolve qui vous permettront de convertir directement vos fichiers de log en effectutant de multiples requêtes concurrentes aux serveurs DNS.

Sortie

    > Il y a plusieurs trous dans le texte sur les stats sur les pays. Pourquoi ?

Il y a des codes de pays manquant dans le fichier "pays-conv" (situé dans le répertoire resources). Merci de bien vouloir m'indiquer lesquels que je puisse les ajouter.

    Je ne parviens pas à trouver mon serveur dans les fichiers produits. Pourquoi ?

* Vous devez sélectionner votre domaine locale ($locallog = 1).
* Peut être avez vous mis votre machine dans la variable nolog ? Si c'est le cas, otez la de nolog.
* Ou peut ≖tre votre machine n'a pas de table de reverse DNS. Dans ce cas, vous trouverez votre machine dans la liste des pays non résolus.
* L'application ne gère pas les noms de machines plus longs que 9 champs.

    >J'ai choisi de voir l'activité de mon domaine local mais les stats ne me montrent aucune stats au sein de mon domaine.

Deux possibilités : personne ne s'est servi de votre site à l'intérieur de votre domaine local ou plus simplement avez vous fait une erreur dans la variable $localserver. Vérifiez cela.

    > Cron-pages.pl s'arrête en me prévenant que rien n'a été scanné

* Vérifiez votre variable $tri. Elle doit être mise à "/" si vous désirez des stats sur l'ensemble de votre fichier de log ou elle doit être à un sous répertoire si vous ne désirez qu'une partie de votre fichier de log. Peut être essayez vous de scanner votre fichier de log avec un sous répertoire qui n'existe pas.
* Peut être avez vous exclus tout votre serveur ! Vérifiez @excluderepert dans votre fichier config.pl
* Le fichier de log doit posséder plus d'une journée de données. Attendez le lendemain pour avoir un fichier de log plus important.

    > Aucun fichier n'est produit.

Est ce que votre répertoire est en écriture ? Avez vous sélectionner un langage pour la sortie dans @lang ?

    > L'initialisation est très lente (cron-pages.pl)

Vérifiez votre fichier de configuration. Evitez d'utiliser l'option de reverse dns car chaque ligne de votre fichier de log peut prendre plusieurs secondes à être exécuter. Si vous avez de gros fichiers de log, utilisez une précision plus bas (évitez impérativement le mode 4). Vous pouvez aussi compresser votre fichier de log pour augmenter la vitesse de calcul.

    > Je voudrais juste des stats entre deux dates ou je veux des stats sur une journée spécifique.

Uitilisez cron-page.pl -s <date1> -r <date2> où date1 et date2 ont les syntaxes suivantes : <jour>-<mois>-<année> (jour, mois et année sont des nombres à deux chiffres)
Utilisez cron-inc.pl -j <date> où date a la syntaxe suivante : dd/Mmm/yyyy dd est le jour avec deux chiffres, Mmm est le mois avec la première lettre en majuscule et yyyy est l'année avec quatre chiffres.

    > The daily graph show me only few days ago but I would like to view stats deeply in the past.

Use cron-day.pl with the -d flag. Specify the number of days you want to get back in past.

    > I would like to exclude stats from some countries.

In your configuration file, your should add in the @nolog variable, the name of the countries you want to exclude. (@nolog = ('.fr') to exclude french accesses)

    > I have some JSP files on my server and don't see them in the report

First you should see them in the 'filetype' area. If you need in fact to treat jsp file as html files, add 'jsp' in @extension (eg : @extension = ('html','jsp');)
You can do the same for other filetype (xml,asp...)

    > Trying to launch the script from the admin interface, I have a 'Problem creating directory' warning.

If you want to run the stats from the web interface, the server should be allow to make the stats directory you have defined in your configuration file. Usually a web server have very limited permission (security) so most of the time, it won't be allow to create a directory. You'll need to manually do the job and set permission to 777 to allow the server to write in.

    > Je voudrai exclure mon propre robot, quelle est la procédure ?

Il suffit d'éditer le fichier robot.txt qui se trouve dans le répertoire resources. Il faudra y ajouter une nouvelle entrée de la forme :
"chaine_identifiant_le_robot_dans_le_fichier_de_log", "Nom_du_Robot",
où le premier champs est une chaine de caractères qui permet d'identifier de manière unique le robot dans les fichiers de log. Pour connaitre cette chaine, il faut regarder dans les fichiers de log. Le deuxième argument est le nom du robot tel qu'il apparaitra dans les sorties de W3Perl. Bien sur, il est possible d'inclure votre robot dans la prochaine version de W3Perl pour vous évitez de remodifier ce fichier à chaque mise à jour du logiciel.

    > Les stats ne montrent aucune session trouvé.

Le calcul des sessions est basé sur les pages html plutot que sur les requêtes, car cela permet d'effectuer une mesure plus précise et fiable que les hits. En fait, les sessions se basent sur les extensions de fichier présents dans la variable @extension de votre fichier de configuration. Par exemple, si vous désirez connaitre les sessions sur les fichiers mp3, il suffit d'ajouter cette extension dans la variable @extension. Mais si aucun fichier correspond n'est trouvé, le script reportera alors un 'no session found'. Assurez vous également que les fichiers sont bien accessibles et donc qu'ils n'ont pas été rejetés par le serveur.

    > Je voudrais voir mes pages php traitées comme des pages html.

Il suffit de rajouter l'extension php dans la variable @extension de votre fichier de configuration.

    > Comment activer les stats sur la taille des écrans ?

Il est nécessaire d'inclure un morceau de javascript dans vos pages les plus populaires. Le script est situé dans le répertoire /resources/js/ et se nomme misctstats.js. Il faut crée un répertoire /js/ à la racine de votre serveur et y déplacer ce script. Ensuite, il faut ajouter deux lignes de code qui se trouve dans les commentaires du script dans votre code HTML. L'emplacement du fichier miscstats.js peut être modifié mais il faudra veiller dans ce cas à changer également les liens qui pointent dessus dans les deux lignes de code.

    > Les fichiers de log sont sur une machine de mon provider.

La dernière version de W3Perl est capable de télécharger automatiquement les fichiers de log distant si ceux-ci sont accessibles pour une URL http ou ftp.

    > Je ne peux pas utiliser la machine de mon provider pour lancer les stats

La méthode la plus simple est de récupérer localement les fichiers de log de votre provider et ensuite de faire tourner W3Perl sur votre machine. Dans le répertoire /tools/ il y a des scripts qui permettent de télécharger automatiquement les derniers fichiers de log et lancer ensuite la mise à jour des stats.
W3Perl peut également récupérer directement les fichiers de log distant.

    > Comment puis-je mettre à jour ma liste noire de spammer ?

Des versions plus récentes sont disponiles sur ce site ReferrerCop

    > J'aimerais rajouter mes propres extensions de fichier qui sont vus comme 'inconnu' dans les sorties.

Editez le fichier fileext dans le répertoire resources. Il vous faudra rajouter une nouvelle entré de la forme :
<Nom de l\'extension de fichier> <espace> <extension> <espace> < type d'extension>
par exemple : AVI movie (.avi) 4
où "AVI movie" est le nom de l'extension de fichier, "(.avi)" est l'extension et "4" la catégorie (ici Multimédia, voir les premières lignes du fichier).

    > Certains sites sont vus comme des spammeur alors qu'ils sont dignes de confiance, comment puis je les retirer de cette liste ?

La liste des spammeurs par références se trouve dans le fichier resources/referrer-standard.txt
Editez ce fichier et oter les sites qui vous semblent honnêtes.

    > Je voudrais juste rafraichir la page principale des stats.

Il suffit de relancer le script cron-pages.pl avec l'option -u (u pour 'update' ou 'mise ` jour').

Windows

    > Est ce que W3Perl fonctionne sous Windows 2000, XP et Vista

Oui. Il vous faudra avoir un serveur IIS qui tourne ainsi que ActivePerl installé. Si vous n'avez pas de serveur web qui tourne, il vous faudra utiliser le binaire w3perl.exe.

    > Je n'ai pas de serveur IIS qui tourne sur ma machine, mais je voudrais avoir les stats à partir des fichiers de log de mon provider

Veuillez installer w3perl.exe qui n'a besoin que de Perl pour tourner. Ensuite, il vous faudra récupérer les fichiers de log de votre provider sur votre disque dur. Une fois cette étape terminée, vous devrez configurer W3Perl, ceci s'effectuant à l'aide d'un fichier de configuration. Le fichier config-win.pl peut servir de point de départ.
Si vos fichiers de log sont disponibles à partir d'une URL, W3Perl est capable de les télécharger automatiquement.

    > J'ai quelques problèmes à faire tourner W3Perl pour la première fois

Si votre serveur vous renvoie le message suivant : " The specified CGI application misbehaved by not returning a complete set of HTTP headers", il est fort probable que vous avez utilisé le caractère '\' au lieu de '/' dans les chemins au niveau du fichier de configuration. L'antislash est un caractère spécial en Perl et ActivePerl sait très bien géré les chemins unix donc veuillez plutot utiliser ce caractère '/'..

    > J'utilise le format Microsoft au lieu du format W3C. Comment changer le fichier de configuration fourni pour IIS ?

Utilisez l'interface d'administration et sélectionnez la section 'modify configuration'. Ensuite veuillez changer le format de log par défaut (W3C) par celui de Microsoft. Complétez le formulaire jusqu'à la dernière page pour sauver le nouveau fichier de configuration. Il suffit ensuite de relancer les stats.

back