Voilà ce qui arrive quand vous appuyez sur Pause trop longtemps sur Arte +7 !
Du coup, on connaît la version de PHP utilisée, la version d’apache et même l’IP du serveur !
Si vous avez toujours voulu connaître la différence entre un geek et un nerd, cette infographie est faite pour vous !
N’essayez pas forcément de vous positionner dans l’une ou l’autre des catégories. C’est juste une théorie de l’auteur de cette infographie, théorie à laquelle je n’adhère pas totalement. C’est très binaire de dire : Geek = Mac et Nerd = PC. C’est trop réducteur à mon goût. Par contre, le fait de dire que Nerd = introverti, cela s’approche un peu plus de la réalité. Et le fait de mentionner le film Matrix est, à mon humble avis, une consécration pour les nerds.
J’ai passé une bonne demi-heure à remplir ce test, LE geek test. Un bonne demi-heure à me marrer, à me dire que je suis peut-être bien une geek, qui aime la série « The Big Bang Theory », qui aime aller à la bibliothèque et bien sûr qui aime bosser sous Linux …
Si vous avez un doute sur votre geek attitude, si vous souhaitez savoir ce qu’être geek veut dire, faîtes le test !
Pour ma part, je le crie haut et fort : je suis une geek et fière de l’être !
Au passage, je viens de regarder un excellent documentaire sur les geeks sur Arte.
Dans mon fichier de configuration Apache, le format de logs est défini ainsi :
LogFormat « %h %l %u %t \ »%r\ » %>s %b \ »%{Referer}i\ » \ »%{User-Agent}i\ »" combined
Dans mon fichier access_log, j’ai des logs de ce genre :
::1 – - [01/Apr/2012:19:30:01 +0200] « GET /index.html HTTP/1.1″ 404 283 « - » « Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20100101 Firefox/10.0″
::1 – - [01/Apr/2012:19:30:05 +0200] « GET / HTTP/1.1″ 403 4609 « - » « Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20100101 Firefox/10.0″
::1 – - [01/Apr/2012:19:31:52 +0200] « GET /test.php HTTP/1.1″ 404 281 « - » « Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20100101 Firefox/10.0″
::1 – - [01/Apr/2012:19:33:45 +0200] « GET /test.php HTTP/1.1″ 404 281 « - » « Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20100101 Firefox/10.0″
::1 – - [01/Apr/2012:19:33:46 +0200] « GET /test.php HTTP/1.1″ 404 281 « - » « Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20100101 Firefox/10.0″
::1 – - [01/Apr/2012:19:33:47 +0200] « GET /test.php HTTP/1.1″ 404 281 « - » « Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20100101 Firefox/10.0″
::1 – - [01/Apr/2012:19:33:49 +0200] « GET /test.php HTTP/1.1″ 404 281 « - » « Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20100101 Firefox/10.0″
::1 – - [01/Apr/2012:19:36:06 +0200] « GET /test.php HTTP/1.1″ 200 51377 « - » « Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20100101 Firefox/10.0″
::1 – - [01/Apr/2012:19:36:06 +0200] « GET /test.php?=PHPE9568F34-D428-11d2-A769-00AA001ACF42 HTTP/1.1″ 200 2524 « http://localhost/test.php » « Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20100101 Firefox/10.0″
::1 – - [01/Apr/2012:19:36:06 +0200] « GET /test.php?=PHPE9568F35-D428-11d2-A769-00AA001ACF42 HTTP/1.1″ 200 2146 « http://localhost/test.php » « Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20100101 Firefox/10.0″
Dans la documentation en ligne d’Apache, j’ai ceci :
%...h : Remote host => ::1 dans notre cas, appel en local
%...l Remote logname (from identd, if supplied). This will return a dash unless IdentityCheck is set On. => vide dans notre cas
%...u Remote user (from auth; may be bogus if return status (%s) is 401) => vide dans notre cas
%...t Time the request was received (standard english format) => exemple : [01/Apr/2012:19:30:05 +0200]
%...r First line of request => exemple : « GET /index.html HTTP/1.1″
%...s Status. For requests that got internally redirected, this is the status of the *original* request — %...>s for the last. => exemple : 404
%...b Size of response in bytes, excluding HTTP headers. In CLF format, i.e. a ‘-‘ rather than a 0 when no bytes are sent. => exemple : 283
%...{Foobar}i The contents of Foobar: header line(s) in the request sent to the server. Changes made by other modules (e.g. mod_headers) affect this.
=> exemple : « Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20100101 Firefox/10.0″
Si vous avez lu mon dernier article, cela vous semblera très simple à faire. Je repère la colonne qui m’intéresse, ici c’est la colonne numéro 9 en rouge. J’utilise du awk pour n’afficher qu’une colonne bien précise puis je trie et compte le nombre de codes retournés par Apache.
cat /var/log/httpd/access_log | awk ‘{ print $9 }’ | sort | uniq -c
Cela donne :
5 200
2 304
17 403
18 404
=> 5 fois le code 200, 2 fois le code 304, 17 fois le code 403, 18 fois le code 404.
Pour en savoir plus sur la signification des codes.
Comment compter le nombre de lignes identiques dans un fichier sous Linux ? Cela est possible avec la commande uniq à laquelle on ajoute l’option -c. Rien ne vaut un cas concret.
Mon fichier de départ contient :
lundi
mardi
lundi
lundi
mercredi
mardi
mercredi
jeudi
jeudi
jeudi
jeudi
vendredi
jeudi
lundi
samedi
dimanche
Vous voyez de nombreuses lignes identiques, le but ici est de compter le nombre de fois qu’apparaît chaque ligne. Il suffit pour cela de lancer une ligne de commande sous Linux :
cat monFichier | sort | uniq -c
On trie d’abord le fichier avec la commande sort puis on compte le nombre de lignes identiques avec la commande uniq et l’option -c.
Voilà ce que cela donne :
1 dimanche
5 jeudi
4 lundi
2 mardi
2 mercredi
1 samedi
1 vendredi
J’utilise cette commande pour extraire puis compter le nombre d’occurences dans des fichiers de logs. C’est très pratique et surtout très rapide.
Pour en savoir plus sur les commandes uniq et sort :