Я проверил ассеты — они всё ещё там. Я запускаю непродакшн-инстанс для тестирования, и там та же ситуация. На этом сайте я обновил интерфейс, но стало только хуже — появилось ещё больше отсутствующих ассетов.
Вот что странно: почти год назад мы перешли с хостинга Discourse на собственный хостинг. При проверке ошибок в консоли обнаружилось, что отсутствующее изображение возвращает ошибку 403 с сервера Discourse.
Файлы темы показывают ожидаемый URL собственного хостинга, а не 403
На этом скриншоте ошибка 403 относится к файлу с сервера Discourse, а те, что выше и ниже, загружаются с ожидаемого собственного сервера.
Я с радостью отвечу на вопросы, если проблема не единичная. Также прошу выложить необходимые команды консоли для корректного восстановления.
Например, я не уверен, что хочу запускать перенаправление с старого сервера Discourse на новый собственный, поскольку это уже было сделано, насколько я помню, корректно.
Недавно у кого-то возникла похожая проблема, и я полагаю, что это было связано с тем, что активы S3 не были включены/перенаправлены при переходе от хостинга на Discourse к самостоятельному хостингу?
На другом непромышленном сайте тоже отсутствуют аватары — это новая проблема. Быстрая проверка системной аватары показала, что она снова вернулась к URL Discourse. Как такое изменение может происходить, казалось бы, случайно
Это не продакшн-сервер. Публичный сервер корректно отображает файлы, несмотря на то, что они не работают. Планировать восстановление резервной копии на нём не собираюсь.
Когда вы покинули хостинг discourse.org, вы не запросили резервную копию, включающую ваши загрузки, поэтому с момента ухода вы используете их в их S3-бакете.
Если вам повезет, вы можете написать в службу поддержки и попросить восстановить их. Если они смогут это сделать, вам нужно будет скачать эти файлы в локальное хранилище, прежде чем они окончательно удалят их.
Большое спасибо за ответ, я очень ценю это, особенно зная ваш уровень экспертизы.
Когда мы это делали, насколько я помню, от Discourse требовалось только «поставить галочку, чтобы загрузки включались в файл резервной копии», после чего мы скачивали его, а я выполнял последующее подключение по SSH для переназначения.
Идея о том, что мы использовали серверы Discourse, не укладывается в моём ограниченном понимании того, как всё это работает. Не могли бы вы подробнее разъяснить?
Они хранят загрузки в бакете S3. Флажок «Включить загрузки» включает только локальные загрузки, а не те, что находятся в S3.
Существует скрытая настройка сайта include_s3_uploads_in_backups. Если вы отмените свой тарифный план, эта настройка включится по умолчанию. Если вы попросите их включить эту настройку, они это сделают. Но если вы просто сделаете резервную копию перед отменой тарифного плана, загрузки из S3 не попадут в неё — только те, что в локальном хранилище (а их там нет).
Но, возможно, я ошибаюсь, и у вас просто несколько тем с жестко прописанными в них ресурсами Discourse. Это, безусловно, относится к теме на ваших изображениях.
В теме в настоящее время указан правильный локальный URL, что можно увидеть здесь и в консоли, но ошибка внизу подтягивается из Discourse. Как это исправить? Я даже не понимаю, что происходит