我正在使用Openshift DIY墨盒。我希望能够在我的应用程序上使用https。实际上,我的安全配置需要安全连接。我无法按照page中的说明开始工作。有没有办法让https在DIY墨盒上工作?
由于
注意:我的应用程序是一个Spring启动应用程序,我正在使用嵌入式tomcat容器。如果您想了解任何细节,请告诉我,我可以在这里发布。
答案 0 :(得分:1)
请参阅this diagram,了解请求如何路由到您的应用程序。基本上,OpenShift Online在您的应用程序前使用反向代理,SSL连接在那里终止,永远不会到达您的实际应用程序。您可以编写应用程序,就像它不需要SSL一样,然后检查请求标头中的连接类型,看它是否确实是SSL连接。
答案 1 :(得分:0)
您必须强制客户端通过安全连接https。正如here所述,您可以;
绑定到端口443,因此来到此端口的请求将转发到您的应用程序。
使用x-forwarded-proto
标头确定您的客户是通过http还是https进行连接。
根据您的墨盒和解决方案,有多种方法可以执行此操作。我的情况是我使用DIY墨盒和Spring Boot,我所要做的就是添加;
tomcat.protocol_header: x-forwarded-proto
在我的application.yaml文件中。同时我修改了嵌入式Tomcat以连接到端口443.除此之外,我的应用程序在$OPENSHIFT_DIY_IP
和$OPENSHIFT_DIY_PORT
上运行。
其他(Spring Boot)链接有帮助;