HAProxy - Схема перенаправления на HTTPS с сохранением того же метода HTTP (POST)

Я использую HAProxy 1.6

Я принудительно использую https. Поэтому в моем бэкэнде я перенаправляю http на https. Для этого я использую следующий код:

backend my-app-name
    redirect scheme https if !{ ssl_fc }
    [...]

Это работает хорошо, но если мой HTTP-запрос выполняется с использованием метода POST, кажется, что схема перенаправления изменит метод на GET.

Я видел это в В документации HAProxy , касающейся перенаправления HTTP, мы можем изменить код HTTP на 308. Но я не могу изменить поведение моего текущего приложения.

Как я могу перенаправить на https с помощью HAProxy и сохранить свой исходный метод HTTP?

0
задан 25 October 2016 в 14:30
1 ответ

как вы почти сказали, вы можете сделать следующее:

backend my-app-name
       redirect scheme https code 308 if !{ ssl_fc }

haproxy вернет 308 (вместо 302). Я не знаю, как задействовано ваше приложение. Если он находится за haproxy, он никогда не заметит первые запросы, отличные от https. И, например, любой браузер выполнит второй запрос через https и тот же HTTP-глагол, то есть сохранит POST.

1
ответ дан 4 December 2019 в 16:27

Теги

Похожие вопросы