У меня есть некоторые проблемы с SpringBoot 1.5.19.RELEASE, возникающие из-за проблем с токеном Keycloak. В краткосрочной перспективе вместо того, чтобы уменьшить размер токена, мы хотим вместо этого увеличить максимально допустимый размер заголовка.
Множество страниц переполнения стека предполагают, что настройка server.max-http-header-size=48000
в application.properties
должна облегчить симптом, и это делает. Я также могу успешно использовать это из командной строки как системное свойство -Dserver.max-http-header-size=48000
. Но даже изменение командной строки для всех наших сервисов немного утомительно, так как строка комманды встроена в каждый docker образ, поэтому я подумал о переменной среды, которую можно изменить во время развертывания ...
Spring docs предполагает, что application.properies
также может быть переопределен из среды с помощью RelaxedPropertyResolver
, позволяя, например, spring.profiles.active
быть установленным из переменной среды SPRING_PROFILES_ACTIVE
. Это работает хорошо, и я использовал это много раз.
Но при попытке моих сервисов в среде SERVER_MAX_HTTP_HEADER_SIZE=48000
, SERVER_MAX-HTTP-HEADER-SIZE=48000
и даже SERVER_MAXHTTPHEADERSIZE=48000
применяются ограничения по умолчанию - кажется, ничего не происходит быть распознанным Spring.
Как я могу указать этот параметр через переменную окружения без необходимости перестраивать docker images et c, которые запускают службы?