Здравствуйте,
Я относительно новый пользователь Discourse, поэтому надеюсь, что мой вопрос не дублирует другие и не размещён в неправильной категории. Я использую плагин RSS polling для импорта новостей из RSS-лент и создания тем обсуждения. Я обнаружил, что после первоначального корректного отображения изображения позже перестают работать, заменяясь фрагментами кода, подобным приведённому ниже:

Похоже, это происходит из-за того, что Discourse пытается закэшировать ранее горячо ссылаемое удалённое изображение из RSS-ленты. Я предполагаю, что проблема возникает при загрузке и сохранении этого изображения, но не знаю, как отладить процесс.
Ниже приведён пример того, как выглядело изображение до и после в истории версий поста:
Добро пожаловать в сообщество Discourse! Этот вопрос уже поднимался несколько раз, но это действительно важная проблема. Подробную информацию о ней можно найти здесь: Fix broken images for posts created by the WP Discourse and RSS plugins. Описание причины проблемы содержится в моём первом ответе в той теме.
Если возможно, лучший способ решить эту проблему — добавить домен (или домены), с которых загружаются изображения, в настройку сайта Discourse disabled image download domains. Это предотвратит попытки Discourse загрузить изображения. Именно процесс загрузки удалённых изображений приводит к их поломке.
Чтобы исправить проблему с уже существующими постами, в которых изображения не отображаются, отредактируйте пост и добавьте пустую строку над тегом разметки, созданным для изображения. Например, если вы видите разметку следующего вида:
Есть ли причина, по которой Discourse не может загрузить эти изображения локально? Прямые ссылки из RSS-ленты — довольно ненадежное решение.
Редакция: Я также заметил, что если я редактирую посты, чтобы исправить битые изображения, они снова ломаются через несколько минут! Я добавил в список исключений оба домена изображений, которые смог найти, но это не помогло.
Discourse может загружать изображения, проблема в том, что при загрузке удалённого изображения Discourse создаёт маркдаун-тег для этого изображения. Если маркдаун-тег загрузки изображения обернут в HTML-теги, ссылка на изображение будет нерабочей. Помимо темы, на которую я дал ссылку, есть также отчёт об ошибке по этой проблеме здесь: Markdown rendering issue with image surrounded with HTML.
Да, может быть сложно заранее узнать, с каких доменов будут предоставляться изображения из RSS-ленты.
Можете ли вы дважды проверить, что правильные домены добавлены в настройку сайта disabled image download domains? Я ожидал, что этот подход сработает, но возможно, что после загрузки изображения Discourse будет продолжать использовать загруженную версию, даже если домен изображения добавлен в настройку disabled image download domains. Если это так, вы можете попробовать удалить тему, чтобы она была воссоздана при следующей проверке RSS-ленты Discourse. Дайте знать, если у вас не получится это исправить.
Не уверен, что я делаю не так, но даже после удаления тем они возвращаются с той же проблемой. Пример URL изображения: https://waspsholdingstore.blob.core.windows.net/media-cached-prd/b/5/f/a/2/6/b5fa26b1309701c3411b30433b113d189569b98a.jpg, поэтому я добавил waspsholdingstore.blob.core.windows.net в настройку «Запрещённые домены для загрузки изображений». Также я добавил wasps.co.uk — домен, используемый в исходном RSS-фиде (он, похоже, делает редирект 301 на этот бакет Windows).
Есть ли более надёжный способ удалить тему, который мне стоит попробовать, чтобы убедиться, что дело не в кэше?