我需要在部署在IBM Bluemix上的spring-boot应用程序(生成jhipster)上强制执行https。我正在部署没有嵌入式tomcat的spring-boot war,cloudfoundry的文档指定java build pack本身为Tomcat配置了RemoteIPValve ,所以我不需要在StackoverFlow上添加许多答案所指定的标题。
server.tomcat.remote_ip_header=x-forwarded-for
server.tomcat.protocol_header=x-forwarded-proto
我还在安全配置中添加了以下代码
@Override
protected void configure(HttpSecurity http) throws Exception {
http.requiresChannel().anyRequest().requiresSecure();
}
我的应用仍未被重定向到https。
我还有一个疑问,如果在bluemix域上执行https,对自定义域也会有同样的工作吗?
谢谢, 瓦苏
答案 0 :(得分:0)
服务器:
tomcat:
remote_ip_header: x-forwarded-for
protocol_header: x-forwarded-proto
以上tomcat标头告诉服务器原始请求是http还是https,
if(profile.equalsIgnoreCase(Constants.SPRING_PROFILE_PRODUCTION)) { 。http.requiresChannel()anyRequest()requiresSecure(); }