Le téléchargement du logo ne fonctionne pas après la restauration à partir de la sauvegarde

Oubliez ça, je rencontre à nouveau le problème… Donc, les images du logo fonctionnaient parfaitement jusqu’à ce que je vide le cache de mon navigateur.

Solution

La cause racine était que la plupart des images n’avaient pas été correctement restaurées à partir de la sauvegarde lors de l’opération de restauration. J’ai pu résoudre le problème en extrayant manuellement l’archive tar et en copiant les images manquantes dans le répertoire d’uploads de Discourse.

Analyse

Lorsque j’essaie de télécharger un nouveau logo, voici ce que je vois :

  1. Le téléchargement de l’image semble fonctionner correctement :

  1. Mais la requête GET suivante pour afficher l’image téléchargée renvoie une erreur 404 :

  1. L’image n’est pas présente dans le répertoire d’uploads :
/var/discourse# tree shared/standalone/uploads/default/original/
shared/standalone/uploads/default/original/
`-- 1X
    |-- 52b3aff4e63a7e38bef42d469bafd1ed7c1cc1a2.png
    `-- e952cfd4c1bc58e77024e4c2b518531356319780.png

Voici le contenu de l’archive de sauvegarde :

/tmp# tar tvzf ask-tunisians-2020-07-28-042934-v20200728004302.tar.gz 
-rw-r--r-- discourse/www-data 11767008 2020-07-28 04:29 dump.sql.gz
drwxr-xr-x discourse/www-data        0 2020-07-26 21:11 var/www/discourse/public/uploads/default/
drwxr-xr-x discourse/www-data        0 2020-07-26 21:11 var/www/discourse/public/uploads/default/original/
drwxr-xr-x discourse/www-data        0 2020-07-27 20:33 var/www/discourse/public/uploads/default/original/1X/
-rw-r--r-- discourse/www-data    14843 2020-07-26 21:56 var/www/discourse/public/uploads/default/original/1X/7835873085d7323b640c2504cd737b51f370360f.png
-rw-r--r-- discourse/www-data     9039 2020-07-27 20:33 var/www/discourse/public/uploads/default/original/1X/75a192f211147f512bdddabaf50addd43c6a9d86.png
-rw-r--r-- discourse/www-data     5783 2020-07-26 21:56 var/www/discourse/public/uploads/default/original/1X/19629775936660ecc73235158b4d68b9ec4b2abe.png
-rw-r--r-- discourse/www-data    11124 2020-07-26 21:11 var/www/discourse/public/uploads/default/original/1X/e952cfd4c1bc58e77024e4c2b518531356319780.png
-rw-r--r-- discourse/www-data    35570 2020-07-26 21:11 var/www/discourse/public/uploads/default/original/1X/52b3aff4e63a7e38bef42d469bafd1ed7c1cc1a2.png
-rw-r--r-- discourse/www-data     2375 2020-07-26 21:56 var/www/discourse/public/uploads/default/original/1X/d4af3550a7c3f857c974b996257c8e3db72e7850.png
-rw-r--r-- discourse/www-data     9759 2020-07-26 22:14 var/www/discourse/public/uploads/default/original/1X/dfc47da4c22ffeddf59f736a46a2c50ee55d7fa1.png
-rw-r--r-- discourse/www-data    24898 2020-07-26 21:46 var/www/discourse/public/uploads/default/original/1X/d832b24f2cb338139984be98045d22e0af093c4a.png

Clairement, les images étaient présentes, mais je suppose que la question est : pourquoi la plupart des images n’ont-elles pas été copiées correctement dans le cadre de l’opération de restauration ?