java - 经f5转发,tomcat使用https协议问题
过去多啦不再A梦
过去多啦不再A梦 2017-05-27 17:41:49
0
2
989

今天新项目上线,碰到一个问题,公司用f5转发,使用的世https协议,但是在我们项目里request.getScheme()获取到的却是http,运维说是我们代码问题....,我查看我们项目的tomcat的serve.xml,发现没有证书,我想问一下精通这方面问题的小伙伴们,tomcat里没有证书,能用https协议吗?有碰到过这个问题的吗?怎么解决的?

过去多啦不再A梦
过去多啦不再A梦

全部回复(2)
阿神

https通常是由反向代理(如F5)来完成的(即SSL证书是配在反向代理上的),而Tomcat本身用的是http协议。

由于反向代理用了7层转发,request.getRemoteAddr()不可能得到用户真实IP地址,所以通常在反向代理那边配X-Forwarded-For,Tomcat这边用request.getHeader("X-Forwarded-For")拿到用户真实IP地址)。同样道理,request.getScheme()也不可能得到用户真实的协议,通常会在反向代理那边配X-Forwarded-Proto这种Header,Tomcat这边用request.getHeader("X-Forwarded-Proto")来判断用户是否处于https状态。

漂亮男人

没明白你的问题是啥。。
tomcat没配证书怎么用https?
f5没用过,类似的nginx是可以做到ssl卸载的,即你的应用不需要感知https

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板