Accueil L’association Fonctionnement du site Liens croisés MMT Mise à jour programmée de la page de liens croisés

Publié le : 30 mai 2007
Imprimer Imprimer cet article

Auteur :
Alain Sichel †

Alain Sichel
Mise à jour programmée de la page de liens croisés

Cet article vient compléter les autres pages de cette rubrique Liens croisés MMT pour ceux qui veulent automatiser la mise à jour de la page de liens croisés sans surcharger leur serveur.

 

L’exemple décrit reprend le script que j’ai réalisé pour le site CODES 78 [1].

Je mets le script que j’utilise joint à cet article. Sauf en cas de demande, je vous épargne la description du fonctionnement du script. Ceci n’est qu’un exemple, si vous n’arrivez pas à l’adapter à la présentation que vous utilisez, contactez-moi.

 Principe

Le script affiche un des fichiers en cache, sauf pour la première fois que l’on utilise ce script où ces fichiers sont créés.

La mise à jour de la page ne se fait que quand elle est appelée avec liens_mmt.php?Action=mise_a_jour

Le script vérifie alors s’il y a eu une mise à jour de la page de liens croisés sur le site amital depuis l’enregistrement des fichiers en cache [2].

- s’il y a eu mise à jour de cette page, le script continue et enregistre à nouveau les fichiers en cache,
- le script s’arrête s’il n’y a pas eu de mise à jour.

 Déclenchement de la mise à jour

Le plus judicieux pour ne pas surcharger son serveur est de faire un contrôle chaque nuit (à un moment de faible traffic) en lançant la procédure de mise à jour.

On peut pour cela :

- utiliser crontab, c’est le must, mais tout le monde ne gère pas son serveur...
- mettre son réveil à sonner à 3h smiley
- adapter un script pour cela (voir Simulation de tache cron ou CronEmul)
- faire appel à un service spécialisé, c’est ce qui me semble le plus simple, il y a plusieurs sites qui font cela, webCron, Cron.Hiwit et Online cron.

 Vérification

Pour s’assurer que la mise à jour est bien effectuée, j’ai introduit dans le script l’envoi de 2 mails, l’un quand le contrôle commence, l’autre si une mise à jour est effectuée.

Il faut évidemment indiquer votre adresse email pour que cela fonctionne, puis quand vous êtes sûr du bon fonctionnement, il suffit de mettre // devant les lignes mail($to,$subject,$body,"From: liens_mmt@domaine.org"); pour ne plus recevoir les emails.

 

[1] Liste par nom d’auteur, mixée avec une liste de sélection personnelle, c’est en fait un mélange de l’exemple 7a et de l’exemple 8b avec la présentation de l’exemple 1.

[2] Contrairement aux pages utilisées pour l’affichage par la fonjction readfile() de PHP, les fichiers XML ne sont mis à jour que s’il y a eu une modification enregistrée dans la base de donnée des sites.


Document joint à l'article

maj_cron.zip

Bookmark and Share

Imprimer Imprimer cet article