Неправильный «Сгенерированный URL-адрес сервера» в springdo c -openapi-ui (Swagger UI), развернутый за прокси - PullRequest
0 голосов
/ 10 марта 2020

Приложение Spring Boot 2.2 с springdo c -openapi-ui (интерфейс Swagger) запускает порт HTTP. Приложение развернуто в Kubernetes с помощью входящей маршрутизации HTTPS-запросов извне кластера в службу.

В этом случае пользовательский интерфейс Swagger, доступный по адресу https://example.com/api/swagger-ui.html, имеет неверный «Генерируемый URL-адрес сервера» - http://example.com/api. Хотя оно должно быть https://example.com/api.

Хотя HTTPS обращается к интерфейсу Swagger, сгенерированный URL-адрес сервера все еще использует HTTP.

1 Ответ

0 голосов
/ 10 марта 2020

springdoc-openapi В разделе часто задаваемых вопросов есть раздел Как развернуть Doploy springdoc-openapi-ui за обратным прокси-сервером? .

Раздел часто задаваемых вопросов может быть расширен.

Убедитесь, что X-Forwarded заголовки отправляются вашим прокси (X-Forwarded-For, X-Forwarded-Proto и другими). ​​

Если вы используете Undertow (spring-boot-starter-undertow), задайте свойство server.forward-headers-strategy=NATIVE, чтобы создать веб Сервер изначально обрабатывает заголовки X-Forwarded. Кроме того, рассмотрите возможность переключения на Undertow, если вы его не используете.

Если вы используете Tomcat (spring-boot-starter-tomcat), задайте свойство server.forward-headers-strategy=NATIVE и убедитесь, что список IP-адресов всех внутренних прокси-серверов доверяет свойство server.tomcat.internal-proxies=192\\.168\\.\\d{1,3}\\.\\d{1,3}. По умолчанию IP-адреса в 10/8, 192.168 / 16, 169.254 / 16 и 127/8 являются доверенными.

В качестве альтернативы для свойства набора Tomcat server.forward-headers-strategy=FRAMEWORK.

Полезные ссылки:

...