background image

lundi 26 septembre 2011 - Par Thomas Muguet - web - Aussi disponible en English

header.jpg

J'ai modifié le plug-in liteAccordion pour pouvoir utiliser les thèmes jQuery UI.

liteAccordion.jpg

L'utilisation reste exactement la même, sauf qu'il faut aussi inclure le thème CSS jQuery UI (pas besoin des scripts jQuery UI, le thème suffit).

Pour avoir une démo et télécharger le plugin, rendez-vous sur la page du projet GitHub.

jeudi 8 septembre 2011 - Par Thomas Muguet - dev - Aussi disponible en English

header.jpg

Petite colle

Quel est le résultat de l'exécution de ce fichier PHP ?

case0-1.png

Si vous répondez "hello world" : bravo, vous savez lire du PHP !

Mais si vous répondez "?���" : vous avez raison !

Preuve en image : case0-4.png (même effet en ligne de commande)

Pourquoi ?

Premier indice : le titre du billet

Deuxième indice en affichant les caractères invisibles : case0-2.png

Troisième indice en faisant un hex dump : case0-3.png

Des caractères "0" se sont glissés là et ne sont pas vraiment appréciés par le moteur de PHP...

Cela a l'air marrant au premier abord, mais lorsque vous ne le savez pas, pour débugger un projet où vous avez des caractères "0" qui se sont insérés dans un fichier, c'est nettement moins marrant...

Pour info, cela n'a pas le même effet selon la configuration... J'ai eu cette bizarrerie sur mon ordinateur portable. Sur mon serveur, j'ai droit à des messages "PHP Warning: Unexpected character in input: ' in hello.php on line 2", ce qui est nettement plus gentil...

samedi 3 septembre 2011 - Par Thomas Muguet - IT - Aussi disponible en English

header.jpg

Voici un petit widget que j'avais fait il y a quelques années que j'ai retrouvé dans mes cartons.

Ce widget, "Simple password generator", sert simplement à générer des mots de passes aléatoires, de longueur désirée et parmi les caractères désirés.

spg.png

Pour le télécharger : spg.zip (Mac OS X 10.4.0 et supérieurs)

Voici aussi le fichier de projet Dashcode pour ceux que cela intéresse : password.wdgtproj.zip (ne voyant pas l'intérêt d'une licence sur ce type de projet, je le met en domaine public, donc vous pouvez faire tout ce que vous voulez avec).

EDIT: vous pouvez aussi retrouver le projet sur GitHub.

mercredi 24 août 2011 - Par Thomas Muguet - kasagi

Le site de k’ą́sagi est enfin en ligne avec en bonus une plateforme de démonstration !

k’ą́sagi (prononcer kansagui) est une application web à destination des associations, entreprises, etc pour la gestion des cotisations et des événements. Gestion multi-utilisateurs, tarifs personnalisés : simplifiez-vous la vie ! L'application propose en plus des statistiques au jour le jour et des statistiques prévisionnelles. En bonus, il existe une version offline de l'application !

L'utilisation de l'application est gratuite ; me contacter si vous êtes intéressés.

vendredi 5 août 2011 - Par Thomas Muguet - web - Aussi disponible en English

header.jpg

J'ai redécouvert les joies du referrer-spam grâce aux (et à cause des) statistiques de mes sites...

Les symptômes : plein de sites qui soit disant mènent à vos pages et qui apparaissent dans vos stats. Sites, bien évidemment, louches... Le but étant que, si vos statistiques sont publiques, cela augmente la visibilité de ces sites... Cela a aussi le désavantage de biaiser vos statistiques en générant du faux trafic...

Difficile de s'en débarrasser complètement, mais voilà une technique pour que ces sites n'apparaissent plus dans la liste des referrers et que le trafic généré soit considéré comme "non-vus" (un peu à la manière des bots et des vers)...

J'ai remarqué que tous les spams qui m'ont touchés avaient en commun :

  • la méthode de la requête est HEAD
  • la version du protocole est HTTP/1.0

Ils étaient aussi issus d'un petit nombre d'adresses IP, mais je doute de l'efficacité de filtrer par IP via cette façon de faire...

Je suis donc parti du principe de considérer que toutes les requêtes en HEAD et HTTP/1.0 avec un referrer étaient du spam. C'est un fort postulat : il peut y avoir des faux-positifs, et si un jour les spammeurs décident de passer en GET et HTTP/1.1, il faudra repenser l'idée... Mais pour le moment, c'est efficace.

lundi 1 août 2011 - Par Thomas Muguet - blog - Aussi disponible en English

Après quelques heures de bataille, j'ai enfin réussi à faire marcher l'internationalisation...

Désormais :

  • via en.blog.thomasmuguet.info, blog à majorité en anglais. Les quelques articles non traduits sont toujours en français. De la même façon, les traductions des articles sont proposées.

Pour le côté technique, j'utilise le plugin et quelques petits hacks pour forcer la langue selon le nom de domaine et traduire tous les widgets.

dimanche 31 juillet 2011 - Par Thomas Muguet - web - Aussi disponible en English

Il est toujours préférable d'avoir une table des matières dans les billets (et particulièrement pour les longs billets).

J'ai donc passé la nuit à trouver un moyen de générer une table des matières pour les billets Dotclear.

Le résultat final ressemble à ceci (modulo le thème) :

TOC.jpg

dimanche 31 juillet 2011 - Par Thomas Muguet - système - Aussi disponible en English

Si vous avez déjà essayé de vous connecté via PuTTY à un serveur OpenSSH via clé publique/privée, et que vous êtes tombé sur l'erreur "Server refused our key", voici quelques éléments à vérifier...

dimanche 19 juin 2011 - Par Thomas Muguet - web - Aussi disponible en English

header.jpg

Je voulais avoir les statistiques de mes sites sur mon serveur sous Debian Squeeze, et je suis tombé sur Awstats.

Mais ce que je voulais vraiment était :

  • d'avoir les stats par hôte virtual (eg. www.thomasmuguet.info, blog.thomasmuguet.info, www.kasagi.fr, ...)
  • de voir mes stats sur un ou plusieurs hôte virtuels dédiés à cela (eg. stats.thomasmuguet.info, stats.kasagi.fr, ...)
  • garder tous les logs dans l'access log, qui est rotated (si quelqu'un a une meilleure traduction, je suis preneur)

Voici une manière de faire.

samedi 18 juin 2011 - Par Thomas Muguet - blog

Yet another blog. Non pas que j'aime raconter ma vie, mais plutôt parce que :

  • aux détours du web je croise parfois des choses qui méritent d'être partagées (certains articles sont issus de ma liste de partage Google Reader) ;
  • lorsque je galère sur des problèmes IT où aucune solution n'est apportée, et que je trouve une solution, ça pourrait servir à d'autres.

Je ne garantie pas pour autant qu'il n'y aura pas de billets totalement inutiles...

Table des matières
© 2011 - Thomas Muguet
Powered by Apache Server Powered by Debian Powered by PHP Powering World Community Grid