我在代理服务器后面使用SpringBoot构建一个授权服务(目前Apache,后来将是Nginx)。 该服务处理身份验证(委托给google,facebook,..)并发回JWT。
问题:使用tomcat作为容器,成功验证后的重定向是http://example.com。随着情况一切顺利(https://example.com)
在Apache中我设置了
ProxyPass /auth http://localhost:8080/auth
ProxyPassReverse /auth http://localhost:8080/auth
RequestHeader set X-Forwarded-Proto https
RequestHeader set X-Forwarded-Port 443
ProxyPreserveHost On
在springboot app(application.yaml)
中server:
use-forward-headers: true
知道我能做些什么才能让它与tomcat一起使用? 您可以找到完整的代码(application.yml除外,因为它保留了当前的oauth秘密)on github。
提前感谢任何想法!
答案 0 :(得分:1)
Spring Boot中的嵌入式Tomcat容器不支持开箱即用的前向标头。见https://github.com/spring-projects/spring-boot/issues/6232。我在这方面失去了很多时间。