Faudrait peut-être que je réfléchisse un peu

J’en causais dans le poste hier :

Bon, je suis assez satisfait de mes développements récents dans le plugin sysInfo mais, parce qu’il y a toujours un mais, je n’avais pas tout à fait anticipé une chose en ajoutant la liste des fichiers du cache statique — fichiers gérés par le plugin du même nom — vu que celle-ci peut être potentiellement copieuse, surtout avec un vieux blog comme le mien !

Parce que finalement, obtenir la liste intégrale, même si celle-ci est limitée au blog courant[1], des fichiers du cache statique n’a strictement aucun intérêt en soi, à part bien sûr la satisfaction d’avoir codé ce qu’il fallait pour l’obtenir et permettre la visualisation de leurs contenus.

J’ai donc repris mon stylo et mon bloc de papier pour imaginer ce que pourrait être un utilitaire réellement pratique dans ce domaine. J’en suis arrivé à deux constats :

  1. Il n’y a aucun moyen de déterminer l’URL ayant produit un fichier présent dans le cache statique, le nom de celui-ci étant généré via un md5(), les trois premiers couplets de celui-ci servant à créer la hiérarchie des répertoires dans le dossier de cache statique du blog — d’ailleurs le dossier de cache statique du blog est lui-même créé de la même manière à partir de son URL de base[2].
  2. Il serait utile d’offrir un moyen simple de « calculer » le nom du fichier cache correspondant à une URL (que ce soit la page d’accueil, un billet, un flux XML, …) et d’offrir de quoi parcourir alors la hiérarchie du cache pour retrouver ce fichier et visualiser son contenu, voire le supprimer.

J’ai donc repris ma copie et ai développé une nouvelle version de l’outil dont je vais détailler l’usage ci-après.

Affichage initial

Voilà à quoi ressemble l’affichage initial dans le plugin sysInfo lorsque vous sélectionnez la liste Cache statique :

Affichage initial du cache statique avec le plugin sysInfo

En détail, vous trouvez :

  1. Une zone permettant de « calculer » le nom d’un fichier cache correspondant à une URL. Par défaut c’est l’URL du blog qui est pré-saisie.
  2. Une ligne indiquant le chemin du dossier racine (pour le domaine) du cache statique, et la date de dernière mise à jour (du blog).
  3. Une table listant les répertoires de 1er niveau existants dans le dossier racine du cache statique (pour le domaine hébergeant le blog courant).

Calcul du nom de fichier statique à partir d’une URL

Après avoir renseigné l’URL recherchée, un clic sur le bouton de calcul (avec la flèche à droite), permet d’afficher le nom du fichier cache statique correspondant :

Calcul du nom de fichier cache statique à partit d'une URL

Dans l’exemple ci-dessus, j’ai laissé l’URL du blog, qui correspond donc à sa page d’accueil et j’ai obtenu un nom de fichier commençant par 84d04bac…. Les trois premier couples de caractères forment la hiérarchie des dossiers dans le cache statique. C’est donc ces répertoires qu’il va me falloir parcourir pour retrouver ce fichier.

Affichage du deuxième niveau

Je clique ensuite sur le dossier de premier niveau correspondant au premier couple du nom de fichier, soit 84 :

Liste des dossiers de 2e niveau d'un dossier de 1er niveau du cache statique

Et j’obtiens la liste des sous-dossiers, dont le dossier d0 qui m’intéresse.

Affichage du troisième niveau et de la liste des fichiers

Je clique ensuite sur le dossier de deuxième niveau, correspondant au deuxième couple du nom de fichier, soir d0 :

Liste des dossiers de 3e niveau et de leurs fichiers d'un dossier de 2e niveau du cache statique

J’obtiens la liste des dossiers de 3e niveau, dont le dossier 4b qui m’intéresse et la liste des fichiers cache qui s’y trouvent. Je peux alors visualiser son contenu, avec coloration syntaxique si celle-ci est active dans vos préférences, et éventuellement le supprimer (cocher la case et utiliser le bouton idoine en bas du formulaire).

Affichage du contenu d'un fichier du cache statique

Conclusion

Voilà quelque chose d’un peu plus utilisable et moins stressant pour le serveur puisque le calcul du nom de fichier cache, le parcours de la hiérarchie et la récupération du contenu est faite en Ajax[3], c’est-à-dire uniquement au moment où la demande est faite en cliquant sur le bouton ou le lien associé.

Il y a surement d’autres choses qui pourraient être faites avec ce plugin, comme par exemple supprimer l’intégralité des fichiers caches d’un domaine, ce que ne permet pas la tâche de maintenance du plugin staticCache qui efface l’intégralité du cache, tout domaines confondus.

Et vous avez peut-être d’autres besoins/idées à me suggérer ?

Notes

[1] En réalité elle peut être plus longue puisque plusieurs blogs sur le même domaine se partagent le même dossier cache racine.

[2] Plus précisément, un dossier est créé pour chaque domaine. Si l’URL du blog est http://www.exemple.fr/mon-blog/ alors c’est la partie http://www.exemple.fr qui servira de base pour la création du dossier. Par conséquent, plusieurs blogs sur le même domaine se partageront le même dossier cache de base.

[3] Et je me suis passablement amusé à coder la partie Javascript, langage qui m’intéresse particulièrement en ce moment.

Ajouter un commentaire

Les champs suivis d'un * sont obligatoires

Les commentaires peuvent être formatés en utilisant la syntaxe Markdown Extra.

Ajouter un rétrolien

URL de rétrolien : https://open-time.net/trackback/13208

Haut de page