https to http обратный прокси на Jetty 9

https to http обратный прокси на Jetty 9

Хорошо, в общем, я хочу настроить обратный прокси-сервер для обслуживания https-страниц на nginx и перенаправить их на Jetty с помощью http. Проблема в том, что сервлет на самом деле требует https и перенаправляет на https-адрес, как только видит, что он был отправлен на http-страницу.

Раньше я все это запускал под Jetty 7, добавив:

<Set name="forwarded">true</Set>

в jetty.xml для SelectChannelConnector, и теперь, когда я решил перейти на Jetty 9, я не могу найти замену этой конфигурации, и я почти уверен, что с моей настройкой nginx проблем нет, поскольку раньше он прекрасно работал с Jetty 7.

Вот часть моего конфига nginx, чтобы было понятнее, что у меня там:

location / {
    proxy_pass http://127.0.0.1:8080;
    include /etc/nginx/proxy_params;
}

А вот мой файл proxy_params:

proxy_redirect   off;
proxy_set_header Host              $host;
proxy_set_header X-Real-IP         $remote_addr;
proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;

решение1

Кажется, это довольно просто сделать. Нужно просто раскомментировать следующую часть в /etc/jetty.xml:

<!-- Uncomment to enable handling of X-Forwarded- style headers
<Call name="addCustomizer">
  <Arg><New class="org.eclipse.jetty.server.ForwardedRequestCustomizer"/></Arg>
</Call>
-->

так что либо я был слеп, либо в старой версии Jetty 9 не было этой опции в таком очевидном месте.

Связанный контент