Geeek - Le blog Geek & High-tech

Si, comme moi, vous utilisez Ghost comme solution de CMS pour votre site Internet, vous avez probablement constaté que les images téléchargées et non utilisées dans les articles restent indéfiniment stockées. Avec le temps, ces images peuvent représenter plusieurs dizaines, voire centaines de mégaoctets de stockage inutile. Si vous sauvegardez régulièrement votre site et que vous conservez un historique de plusieurs mois, ces images inutiles finissent par consommer des dizaines de gigaoctets, encombrant vos backups et consommant de l'espace de stockage.

Pour pallier ce problème, un logiciel open source nommé ghost-purge-images permet d'analyser l'ensemble des images sur votre site et d'identifier celles qui ne sont pas utilisées afin de les purger.

Dans cet article, nous allons voir comment installer et utiliser ghost-purge-images pour optimiser votre site Ghost CMS. Nous aborderons également les précautions à prendre avant de procéder à la purge, notamment la sauvegarde de votre site et les considérations de sécurité lors de la modification des permissions.

Pourquoi est-il important de maintenir votre site Ghost ?

Maintenir un site web optimisé est essentiel pour offrir une expérience utilisateur fluide et améliorer les performances globales. Les images inutilisées non seulement occupent de l'espace de stockage, mais peuvent également ralentir les processus de sauvegarde et de restauration. En nettoyant régulièrement votre site des fichiers superflus, vous assurez une meilleure gestion des ressources et facilitez la maintenance à long terme.

Prérequis techniques

Avant de commencer, assurez-vous de disposer des éléments suivants :

  • Node.js : Version 12 ou supérieure est recommandée. Vous pouvez vérifier votre version de Node.js avec la commande node -v.
  • NPM : Généralement installé avec Node.js. Vérifiez votre version avec npm -v.
  • Ghost CMS : ghost-purge-images est compatible avec les versions de Ghost utilisant l'API Content et Admin, généralement à partir de la version 2.10.0. Assurez-vous que votre version de Ghost est compatible en exécutant ghost version dans le répertoire de votre site.

Sauvegarder votre site avant la purge

Avant de procéder à toute opération de maintenance, il est crucial de réaliser une sauvegarde complète de votre site. Voici comment procéder :

  1. Sauvegarde de la base de données : Utilisez l'outil d'exportation intégré de Ghost pour exporter votre contenu :

    • Connectez-vous à votre interface d'administration Ghost.
    • Allez dans Paramètres > Labs.
    • Cliquez sur Exporter pour télécharger un fichier JSON contenant vos données.
  2. Sauvegarde des fichiers : Copiez l'intégralité du répertoire de votre site, y compris les thèmes, les images et les configurations.

    cd /chemin/vers/votre/site
    tar -czvf backup-ghost-site.tar.gz .
    

En cas de problème, vous pourrez ainsi restaurer votre site à son état initial.

Installer ghost-purge-images

L'installation de ghost-purge-images se fait très facilement via NPM. Si vous gérez plusieurs sites, le plus simple est de réaliser une installation globale :

sudo npm install -g ghost-purge-images

Cette commande installe l'outil sur votre système, le rendant accessible depuis n'importe quel répertoire.

Obtenir les clés API nécessaires

Pour que ghost-purge-images puisse interagir avec votre site Ghost, vous devez fournir deux clés API : la clé de contenu et la clé d'administration.

Étapes pour obtenir les clés API :

  1. Accéder à l'interface d'administration : Connectez-vous à votre site Ghost en tant qu'administrateur.

  2. Aller dans les intégrations : Dans le menu latéral, cliquez sur Paramètres (l'icône en forme de rouage), puis sur Intégrations.

  3. Créer une nouvelle intégration : Cliquez sur le bouton "Ajouter une intégration personnalisée".

  4. Nommer l'intégration : Donnez un nom à votre intégration, par exemple "ghost-purge-images", et cliquez sur Créer.

  5. Récupérer les clés :

    • Clé de contenu : Sous la section Clé de contenu, copiez la clé fournie.
    • Clé d'administration : Sous la section Clé d'API d'administration, copiez la clé fournie.

Assurez-vous de garder ces clés en lieu sûr et de ne pas les partager publiquement, car elles permettent d'accéder à votre site.

Tester ghost-purge-images

Avant de procéder à la suppression des images, il est recommandé de tester l'outil pour voir quelles images sont considérées comme inutilisées.

Dans le répertoire racine de votre site Ghost, exécutez la commande suivante en remplaçant VOTRE_CLÉ_CONTENU et VOTRE_CLÉ_ADMIN par les clés que vous avez obtenues :

ghost-purge-images display --content-key=VOTRE_CLÉ_CONTENU --admin-key=VOTRE_CLÉ_ADMIN

Cette commande analysera votre site et affichera la liste des images qui ne sont référencées dans aucun article ou page. Prenez le temps de vérifier cette liste pour vous assurer qu'aucune image importante n'y figure.

Modifier les permissions du répertoire de contenu en toute sécurité

Pour que ghost-purge-images puisse supprimer les images inutilisées, il doit avoir les permissions nécessaires sur le répertoire content de votre site.

Méthode recommandée :

Au lieu de donner des permissions en écriture à tous les utilisateurs, il est préférable de n'accorder les droits qu'à l'utilisateur courant ou au processus Node.js qui exécute Ghost.

sudo chown -R $(whoami) content

Cette commande change le propriétaire du répertoire content vers l'utilisateur courant, ce qui permet à ghost-purge-images de modifier les fichiers sans compromettre la sécurité.

Après la purge :

Une fois l'opération terminée, vous pouvez rétablir les permissions initiales si nécessaire :

sudo chown -R ghost:ghost content

Assurez-vous de remplacer ghost:ghost par l'utilisateur et le groupe appropriés utilisés par votre installation Ghost.

Purger les images inutiles avec ghost-purge-images

Après avoir vérifié la liste des images inutilisées et ajusté les permissions, vous pouvez procéder à la purge :

ghost-purge-images purge --content-key=VOTRE_CLÉ_CONTENU --admin-key=VOTRE_CLÉ_ADMIN

Cette commande supprimera définitivement les images non utilisées de votre répertoire content/images.

Vérifier le bon fonctionnement du site

Après la purge, il est important de vérifier que votre site fonctionne correctement :

  • Parcourir le site : Visitez plusieurs pages et articles pour vous assurer que les images s'affichent correctement.
  • Consulter les logs : Vérifiez les journaux d'erreur pour détecter d'éventuels problèmes liés aux images manquantes.

Restaurer les images en cas de problème

Si vous rencontrez des problèmes après la purge, vous pouvez restaurer les images à partir de votre sauvegarde :

cd /chemin/vers/votre/site
tar -xzvf /chemin/vers/backup-ghost-site.tar.gz content/images

Cette commande restaurera uniquement le répertoire content/images à partir de votre archive de sauvegarde.

Automatiser le processus de purge

Pour maintenir votre site propre sans intervention manuelle, vous pouvez automatiser le processus de purge en utilisant une tâche planifiée (cron job).

Exemple de cron job :

Ouvrez le crontab de l'utilisateur avec :

crontab -e

Ajoutez la ligne suivante pour exécuter la purge tous les mois :

0 2 1 * * /usr/bin/ghost-purge-images purge --content-key=VOTRE_CLÉ_CONTENU --admin-key=VOTRE_CLÉ_ADMIN >> /var/log/ghost-purge.log 2>&1

Assurez-vous de spécifier le chemin correct vers ghost-purge-images et de remplacer les clés par vos propres valeurs.

Optimisations supplémentaires

Pour aller plus loin dans l'optimisation de votre site, voici quelques conseils supplémentaires :

  • Compression des images : Utilisez des outils comme ImageOptim ou TinyPNG pour compresser vos images avant de les télécharger.
  • Utilisation d'un CDN : Distribuez vos images via un Réseau de Distribution de Contenu (CDN) pour améliorer les temps de chargement et réduire la charge sur votre serveur.
  • Mise en cache : Configurez la mise en cache côté serveur et côté navigateur pour améliorer les performances.

Support et ressources supplémentaires

Pour plus d'informations et d'assistance :

Conclusion

En nettoyant régulièrement votre site des images inutilisées grâce à ghost-purge-images, vous optimisez non seulement l'espace de stockage, mais vous améliorez également les performances globales de votre site Ghost CMS. Cette démarche simple et efficace contribue à la maintenance de votre blog et assure une meilleure expérience pour vos lecteurs. En intégrant cet outil dans votre routine de gestion, vous gardez votre site léger, performant et bien organisé.


Vous êtes correctement abonné à Geeek
Bienvenue ! Vous êtes correctement connecté.
Parfait ! Vous êtes correctement inscrit.
Votre lien a expiré
Vérifiez vos emails et utiliser le lien magique pour vous connecter à ce site