Кнопка входа небезопасна

Вчера я устанавливал Discourse за обратным прокси Apache. Apache в основном управляется через самообслуживаемый графический интерфейс, который также позволяет активировать сертификаты Let’s Encrypt и настроить прокси. Кроме того, этот графический интерфейс следит за тем, чтобы сертификаты Let’s Encrypt не истекли. Учитывая это, я хочу исключить возможность того, что я настраивал Discourse без шаблона SSL/LE; внутренне я использую порт 10080. Пока всё работает.

Однако я обнаружил, что в конфигурации Discourse есть опция для глобальной активации https. Я её включил. Это, кажется, работает нормально, но, как я заметил, кнопка входа всё ещё использует http (вместо https). Действительно, Discourse указывает на это с помощью символа открытого замка.

Таким образом, мой вопрос: что мне нужно сделать, чтобы заставить Discourse использовать https?
Заранее спасибо.

Если вы ещё этого не сделали, попробуйте включить настройку сайта Discourse force https. Эта настройка находится в разделе «Безопасность» на страницах настроек вашего сайта.

Спасибо за ваш ответ.
Эта опция уже включена. Похоже, дело в чём-то другом.

Не могли бы вы поделиться конфигурацией вашего обратного прокси?

(И, я думаю, ответ снова будет X-Forwarded-Proto.)

Конечно :slight_smile:

RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Forwarded-Port 80
ProxyPreserveHost Off
ProxyPassMatch "^/((?!(?:errors|\.well-known)/acme-challenge/).*)" "http://localhost:10080/$1" retry=30 timeout=7200
ProxyPassReverse "/" "http://localhost:10080/"

Проблема решена. Всё работает.
Похоже, символ открытого замка не означает, что что-то разблокировано.