Итак, предложение заключается в следующем:
Возможность ввода URL изображения в панели модератора Discourse (в любом варианте: оригинал, оптимизированная версия и т. д.) для удаления. Затем изображение должно быть удалено из всех мест, где оно используется (сообщения, изображения профиля, такие как аватары, фоны и т. д.), а все его вариации — очищены из хранилища изображений (локального или S3). Также возможно добавление возможности блокировки хеша изображения, чтобы предотвратить его повторную загрузку в будущем.
Discourse обрабатывает изображения очень удобно: одинаковые изображения, используемые в разных местах (например, в разных сообщениях от разных аккаунтов), не дублируются в хранилище.
Однако недостаток заключается в том, что удаление конкретного изображения может быть очень трудоёмким процессом, и модераторы не могут выполнить это через веб-панель. Это требует выполнения команд через командную строку на сервере, что делает процесс недоступным для нетехнических специалистов и повышает риск ошибок.
Например, если у вас есть URL изображения с CDN, которое нужно удалить, и оно используется в нескольких сообщениях или ответах, но вы не знаете, в каких именно темах или постах оно находится (что часто бывает при запросах по DMCA — обычно предоставляется только URL изображения без дополнительной информации, часто автоматически ботами, использующими обратный поиск по изображению), процесс удаления становится крайне утомительным.
Если вы удаляете сообщение через веб-интерфейс, содержащее изображение, подлежащее удалению, всё равно требуется значительное время до автоматической очистки изображения из S3 или локального хранилища. Минимальный срок, который можно установить, составляет 1 день через параметр purge_images_from_deleted_posts_days, что также не является идеальным решением. Особенно это важно учитывать с учётом времени очистки CDN, если только она не выполняется вручную, а также с учётом задержки до момента, когда кто-либо сможет обработать запрос. Поэтому обычно загрузка должна удаляться вручную через командную строку, даже если у вас сразу есть вся необходимая информация (тема/пост, аватар и т. д.).
В случае с пользовательским контентом эффективная обработка запросов по DMCA, запросов на удаление данных и т. д. является неотъемлемой и критически важной задачей. Особенно потому, что такие запросы требуют срочного реагирования (если они не будут обработаны в течение ~48 часов — стандартная практика для CDN и хостинг-провайдеров — услуги могут быть приостановлены). Получили запрос в праздник? Не повезло. В выходные? Тоже не повезло. Вы в больнице? Опять не повезло. Хотите пройти 10-дневную молчаливую медитацию Випассана? Тоже не повезло. ![]()