Controllato: Images lost when migrating to self-hosting, posts:rebake non fa nulla di buono.
Problema
Abbiamo seguito le istruzioni ufficiali e creato un’istanza Lightsail, da lì abbiamo scaricato un database dall’interfaccia utente di Discourse e lo abbiamo applicato ottenendo l’80% del risultato. L’idea era di passare all’istanza self-hosted mantenendo attiva la versione precedente.
Una volta che abbiamo una copia live del vecchio forum. Iniziamo a migrare le immagini. Per farlo, prima annulliamo il nostro abbonamento per ottenere e migrare le nostre immagini.
Poiché nuove immagini verrebbero caricate sull’istanza self-hosted, dovremmo solo caricare dall’istanza ospitata prima della data di transizione. Ciò significa che non abbiamo mai utilizzato il dump del database fornito con le nostre immagini e la cancellazione; poiché avevamo già effettuato la migrazione, era ormai scaduto.
Osservo tre comportamenti relativi a questo punto nel tempo.
- Le risorse referenziate nel backup (dump SQL, in particolare) puntano all’infrastruttura di Discourse
- Le risorse referenziate * create successivamente sul backup, ad esempio le immagini dei nuovi post, sono correttamente referenziate e trovate sulla nostra infrastruttura
Di conseguenza, se ricarico una risorsa che ha lo stesso hash, si collegherà all’infrastruttura di Discourse. Ad esempio: provare a correggere la favicon caricandola non funziona. Posso tuttavia caricare qualsiasi altra immagine casuale, e funzionerà.
Stato attuale
Per quanto ne so, upload://<X> passa attraverso la decodifica b62 (e sha1?) per mapparla nella cartella public/uploads. Abbiamo ognuna di queste immagini:
Il dump che ci è stato fornito dal team di Discourse contiene uno zip con
default/original/1Xe attualmente può essere visto in/var/www/discourse/public/uploads/default/original/1X. Quest’ultima cartella ora contiene 329 elementi, il dump fornito conteneva 249 elementi - questo mi sembra buono.
Ciò significa che i dati dovrebbero essere individuabili, anche se non riesco a trovare direttamente l’upload nella cartella. Sto cercando di capire questa relazione, in modo da poter in qualche modo correggere la mappatura. Inizialmente sembrava solo una semplice sostituzione di stringhe, e questo ha funzionato per alcune immagini. Alcune sono ora state sostituite da un transparent.png, dove prima c’era solo un’immagine inaccessibile.

