Este é um guia de referência que descreve como uploads órfãos e excluídos são removidos automaticamente de um site Discourse. Este guia se aplica a sites Discourse auto-hospedados e hospedados.
Nível de usuário necessário: Administrador
Você já se perguntou o que acontece com arquivos e imagens que foram carregados em um site Discourse, mas não são mais referenciados, ou como remover uploads de um site? Você está no lugar certo!
Pode ser necessário excluir arquivos e imagens que são carregados no Discourse e que não são mais referenciados. Não há uma maneira integrada de fazer isso pela interface do usuário, no entanto, o Discourse possui um trabalho automático do Sidekiq agendado para remover uploads órfãos e excluídos chamado clean up uploads.
Uploads órfãos e excluídos
Uploads órfãos são arquivos que foram carregados em um site Discourse, mas não são mais referenciados. Um upload é considerado órfão se e somente se ele não for referenciado:
- Na versão mais recente de uma postagem
- Em um rascunho
- Em uma postagem enfileirada
- Em uma configuração de logotipo do site
- Em um emoji personalizado
- Em um tema
- Em uma imagem de avatar/fundo/cartão de usuário
- Em um logotipo/imagem de fundo de categoria
Uploads são considerados “excluídos” quando o tópico/postagem em que estão contidos é excluído.
Limpeza de uploads
Para remover completamente um upload do Discourse, você terá que fazer uma das seguintes ações:
- Forçar o upload a se tornar órfão removendo qualquer referência a ele. Isso pode ser feito editando o link do upload na postagem em que ele se encontra, ou em qualquer outro lugar onde o upload possa ser referenciado.
- Excluir todos os tópicos/postagens contendo o upload, fazendo com que o upload seja considerado “excluído”. Observe que você precisa remover a imagem da postagem antes de excluir a postagem para torná-la órfã.
Todos os uploads órfãos não referenciados e uploads excluídos serão então removidos do armazenamento (após um período de carência) quando o trabalho clean up uploads for executado.
Configurações do site
As seguintes configurações do site estão disponíveis em example.discourse.com/admin/site_settings/category/files para modificar como o Discourse remove automaticamente os uploads.
clean up uploads: padrão trueclean orphan uploads grace period hours: padrão 48purge deleted uploads grace period days: padrão 30
A configuração clean up uploads pode ser usada para habilitar ou desabilitar a exclusão automática de uploads órfãos não referenciados. clean orphan uploads grace period hours e purge deleted uploads grace period days são as duas configurações que controlam quanto tempo após um upload órfão ou excluído detectado ser removido e permanentemente excluído do site.
Detalhes adicionais sobre o trabalho clean up uploads estão disponíveis no arquivo clean_up_uploads.rb no GitHub.
Remoção de uploads S3
A seção a seguir é aplicável apenas a sites Discourse auto-hospedados.
Se você estiver atualmente hospedado em nosso Plano Empresarial, entre em contato com team@discourse.org se tiver alguma dúvida sobre a exclusão de uploads de seu armazenamento S3.
A limpeza de uploads órfãos e excluídos funciona de forma semelhante para armazenamentos locais e S3. A única diferença entre o armazenamento local e os armazenamentos S3 é que a limpeza dos uploads S3 é tratada automaticamente pelo S3 através de uma política de “tombstone”. Consulte Gerenciando o ciclo de vida do seu armazenamento para obter detalhes adicionais sobre como isso é tratado no S3.
Por padrão, o trabalho clean up uploads inclui uploads S3. No entanto, se você deseja desabilitar esse recurso, pode desmarcar a configuração do site s3 configure tombstone policy.

