在我们的直播环境中,我们在apache后面有tomcat。我们最近购买了SSL证书并将其安装在apache上。
我希望通过https保护所有通信。
https:// {HOST} / {WEBAPP}会返回登录页面。但成功登录后,浏览器中的URL再次显示http链接。所以下一个请求会回到http。我如何确保所有请求始终都在https上。
mod_proxy& mod_jk用于apache配置。 配置中还包含以下内容:
ProxyPass / http:// {localhost}:12004 /
ProxyPassReverse / http:// {localhost}:12004 /
ProxyPreserveHost On
我阅读了很多文章和问题,但似乎对我来说这个问题没有任何意义。 可能是因为我对这个配置的了解不多。
请帮忙。
答案 0 :(得分:0)
httpd通过SSL接收httpd发送给Tomcat的每个请求,然后您需要对Tomcat中的HTTP连接器进行一些调整。您需要设置以下属性:
scheme="https" secure="true" SSLEnabled="false"
最后一个并非严格必要,但最好是明确的。值得重申的是,这只有在以下情况下才有效:a)所有请求都是通过httpd接收的,b)所有代理到Tomcat的请求都是通过https接收的。
您需要在http虚拟主机中的Sibin Grasic答案中重写配置,以将Tomcat流量重定向到https。然后在您的https虚拟主机中,您可以添加mod_proxy指令。