Последнее обновление:
Проблема решена, найдена первопричина — она не связана с Discourse (извините, ребята!). Проблема заключалась в том, что сертификат был обновлён и раздается через HAP. Ранее мы не использовали HAP, и Discourse раздавал сертификат самостоятельно. Мы упустили этот нюанс, что и привело к ошибке CORS.
Извлечённые уроки:
- Откат Discourse не является вариантом — лучше иметь резервную копию всей машины (к счастью, у нас она была).
- Мне ещё предстоит понять, почему так сложно выполнить пересборку с конкретным SHA, следуя инструкциям, которые я прочитал здесь — у меня не получилось.
- Сертификаты всегда лучше раздавать через HAP, но не забывайте об этом. (Для сведения: необходимо добавить флаг
'set-header X-Forwarded-Proto https', так как у Discourse есть собственный NGINX, и именно здесь происходила ошибка). - Тот факт, что никто не сообщал о той же проблеме (даже учитывая, что это крайний случай, поскольку плагин не является официальным), указывал в этом направлении (сообщество работает как задумано :P).
- Проблема проявилась лишь спустя время (до такой степени, что мы уже не помнили об изменении сертификата) из-за пересборки, запущенной обновлением, на которой и произошла ошибка.
Ещё раз спасибо и извините за шум!