Dies ist eine Referenzanleitung, die beschreibt, wie verwaiste und gelöschte Uploads automatisch von einer Discourse-Website entfernt werden. Diese Anleitung gilt sowohl für selbst gehostete als auch für gehostete Discourse-Websites.
Erforderliche Benutzerstufe: Administrator
Haben Sie sich jemals gefragt, was mit Dateien und Bildern passiert, die auf einer Discourse-Website hochgeladen wurden, aber nicht mehr referenziert werden, oder wie Sie Uploads von einer Website entfernen können? Sie sind hier genau richtig!
Möglicherweise müssen Sie Dateien und Bilder löschen, die auf Discourse hochgeladen wurden, aber nicht mehr referenziert werden. Es gibt keine integrierte Möglichkeit, dies über die Benutzeroberfläche zu tun. Discourse verfügt jedoch über einen automatischen Sidekiq-Job mit dem Namen clean up uploads, der regelmäßig verwaiste und gelöschte Uploads entfernt.
Verwaiste und gelöschte Uploads
Verwaiste Uploads sind Dateien, die auf eine Discourse-Website hochgeladen wurden, aber nicht mehr referenziert werden. Ein Upload gilt nur dann als verwaist, wenn er nicht referenziert wird:
- In der neuesten Version eines Beitrags
- In einem Entwurf
- In einem wartenden Beitrag
- In einer Site-Einstellung (z. B. Logo, Favicon)
- In einem benutzerdefinierten Emoji
- In einem Theme
- In einem Benutzer-Avatar/Hintergrund/Kartenbild
- In einem Kategorie-Logo/Hintergrundbild
- In einem Abzeichenbild
- In einem Gruppen-Flair-Bild
Uploads gelten als „gelöscht", wenn das Thema/der Beitrag, in dem sie enthalten sind, gelöscht wird.
Bereinigung von Uploads
Um einen Upload vollständig von Discourse zu entfernen, müssen Sie eine der folgenden Maßnahmen ergreifen:
- Erzwingen Sie, dass der Upload verwaist wird, indem Sie jegliche Referenz auf den Upload entfernen. Dies kann erreicht werden, indem Sie den Upload-Link aus dem Beitrag, in dem er enthalten ist, oder aus allen anderen Stellen, an denen der Upload referenziert wird, entfernen.
- Löschen Sie alle Themen/Beiträge, die den Upload enthalten, wodurch der Upload als „gelöscht" gilt. Beachten Sie, dass Sie das Bild aus dem Beitrag entfernen müssen, bevor Sie den Beitrag löschen, um ihn zu verwaisten.
Alle verwaisten, nicht referenzierten Uploads und gelöschten Uploads werden dann nach Ablauf einer Gnadenfrist aus dem Speicher entfernt, sobald der Job clean up uploads ausgeführt wird.
Site-Einstellungen
Die folgenden Site-Einstellungen sind unter example.discourse.com/admin/site_settings/category/files verfügbar, um zu konfigurieren, wie Discourse Uploads automatisch bereinigt.
clean up uploads: Standardmäßig aktiviert (true)clean orphan uploads grace period hours: Standardmäßig 48purge deleted uploads grace period days: Standardmäßig 30
Die Einstellung clean up uploads kann verwendet werden, um die automatische Löschung verwaister, nicht referenzierter Uploads zu aktivieren oder zu deaktivieren. Die Einstellung clean orphan uploads grace period hours steuert, wie lange nach dem Erkennen eines verwaisten Uploads gewartet wird, bevor dieser entfernt wird. Die Einstellung purge deleted uploads grace period days steuert, wie lange getombstone-te (gelöschte) Uploads aufbewahrt werden, bevor sie endgültig entfernt werden – dies wird durch einen separaten geplanten Job namens purge deleted uploads behandelt.
Weitere Details zum Job clean up uploads finden Sie in der Datei clean_up_uploads.rb auf GitHub.
Bereinigung von S3-Uploads
Der folgende Abschnitt gilt nur für selbst gehostete Discourse-Websites.
Wenn Sie derzeit unseren Enterprise-Plan nutzen, wenden Sie sich bitte an team@discourse.org, wenn Sie Fragen zum Löschen von Uploads aus Ihrem S3-Speicher haben.
Die Bereinigung verwaister und gelöschter Uploads funktioniert sowohl für lokalen als auch für S3-Speicher ähnlich. Der einzige Unterschied zwischen lokalem Speicher und S3-Speicher besteht darin, dass die Bereinigung von S3-Uploads automatisch von S3 über eine Tombstone-Richtlinie durchgeführt wird. Weitere Einzelheiten dazu, wie dies bei S3 gehandhabt wird, finden Sie unter Verwalten des Speicherlebenszyklus.
Standardmäßig umfasst der Job clean up uploads auch S3-Uploads. Wenn Sie diese Funktion jedoch deaktivieren möchten, können Sie die Site-Einstellung s3 configure tombstone policy deaktivieren.

