前几天我遇到了同样的问题。在对Spring Boot 1.3进行一些调试之后,我发现了以下解决方案。
1. 您必须在Apache代理上设置标头:
<VirtualHost *:443> ServerName www.myapp.org ProxyPass / http://127.0.0.1:8080/ RequestHeader set X-Forwarded-Proto https RequestHeader set X-Forwarded-Port 443 ProxyPreserveHost On ... (SSL directives omitted for readability)</VirtualHost>
2. 您必须告诉Spring Boot应用程序使用这些标头。因此,将以下行放在application.properties中(或Spring
Boots可以理解属性的任何其他位置):
server.use-forward-headers=true
如果正确执行这两件事,则应用程序发送的每个重定向都 不会
转到http://127.0.0.1:8080/[path],而是会自动转到https://www.myapp.com/[path]
更新1. 有关此主题的文档在此处。您应该至少阅读它,以了解该属性
server.tomcat.internal-proxies定义了可信任的代理服务器的IP地址范围。



