Questa è una guida di riferimento che descrive come i caricamenti orfani ed eliminati vengono automaticamente rimossi da un sito Discourse. Questa guida si applica sia ai siti Discourse auto-ospitati che a quelli ospitati.
Livello utente richiesto: Amministratore
Ti sei mai chiesto cosa succede ai file e alle immagini caricati su un sito Discourse ma non più referenziati, o come rimuovere i caricamenti da un sito? Sei nel posto giusto!
Potrebbe essere necessario eliminare file e immagini caricati su Discourse che non sono più referenziati. Non esiste un metodo integrato per farlo dall’interfaccia utente; tuttavia, Discourse dispone di un lavoro automatico Sidekiq pianificato per rimuovere i caricamenti orfani ed eliminati chiamato clean up uploads.
Caricamenti orfani ed eliminati
I caricamenti orfani sono file che sono stati caricati su un sito Discourse ma non sono più referenziati. Un caricamento è considerato orfano se e solo se non è referenziato:
- Nell’ultima versione di un post
- In una bozza
- In un post in coda
- In un’impostazione del sito (ad esempio, logo, favicon)
- In un’emoji personalizzata
- In un tema
- In un’immagine avatar/sfondo/card dell’utente
- In un’immagine logo/sfondo di una categoria
- In un’immagine di un badge
- In un’immagine di flair di un gruppo
I caricamenti sono considerati “eliminati” quando il topic/post in cui sono contenuti viene eliminato.
Pulizia dei caricamenti
Per rimuovere completamente un caricamento da Discourse, dovrai fare una delle seguenti cose:
- Forzare il caricamento a diventare orfano rimuovendo qualsiasi riferimento ad esso. Questo può essere fatto modificando il link del caricamento dal post in cui si trova, o da qualsiasi altro luogo in cui il caricamento potrebbe essere referenziato.
- Eliminare tutti i topic/post contenenti il caricamento, facendo sì che il caricamento sia considerato “eliminato”. Nota che devi rimuovere l’immagine dal post prima di eliminare il post per renderlo orfano.
Tutti i caricamenti orfani non referenziati e i caricamenti eliminati verranno quindi rimossi dall’archiviazione (dopo un periodo di grazia) una volta eseguito il lavoro clean up uploads.
Impostazioni del sito
Le seguenti impostazioni del sito sono disponibili all’indirizzo example.discourse.com/admin/site_settings/category/files per modificare come Discourse rimuove automaticamente i caricamenti.
clean up uploads: default trueclean orphan uploads grace period hours: default 48purge deleted uploads grace period days: default 30
L’impostazione clean up uploads può essere utilizzata per abilitare o disabilitare l’eliminazione automatica dei caricamenti orfani non referenziati. L’impostazione clean orphan uploads grace period hours controlla quanto tempo dopo un caricamento orfano rilevato viene rimosso. L’impostazione purge deleted uploads grace period days controlla quanto tempo i caricamenti tombstonati (eliminati) vengono conservati prima di essere rimossi permanentemente; questo è gestito da un lavoro pianificato separato purge deleted uploads.
Ulteriori dettagli sul lavoro clean up uploads sono disponibili nel file clean_up_uploads.rb su GitHub.
Rimozione dei caricamenti S3
La sezione seguente è applicabile solo ai siti Discourse auto-ospitati.
Se sei attualmente ospitato sul nostro Piano Enterprise, contatta team@discourse.org se hai domande sulla cancellazione dei caricamenti dal tuo archivio S3.
La pulizia dei caricamenti orfani ed eliminati funziona in modo simile sia per l’archiviazione locale che per quella S3. L’unica differenza tra l’archiviazione locale e quella S3 è che la pulizia dei caricamenti S3 è gestita automaticamente da S3 tramite una policy tombstone. Consulta Gestione del ciclo di vita dell’archiviazione per ulteriori dettagli su come questo viene gestito su S3.
Per impostazione predefinita, il lavoro clean up uploads include i caricamenti S3. Tuttavia, se desideri disabilitare questa funzione, puoi deselezionare l’impostazione del sito s3 configure tombstone policy.

