【问题标题】:issues with implementing SSL with httpd & tomcat使用 httpd 和 tomcat 实现 SSL 的问题
【发布时间】:2013-11-21 08:16:43
【问题描述】:

在我们的实时环境中,我们在 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 开启

我阅读了很多文章和问题,但对我来说似乎没有一个对这个问题有意义。 可能是因为我对这个配置了解不多。

请帮忙。

【问题讨论】:

  • httpd 是否会通过 SSL 接收所有传递给 Tomcat 的请求?
  • 是的,所有这些都将在 SSL 上。

标签: java apache tomcat ssl


【解决方案1】:

如果 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 指令。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-12-03
    • 2017-09-15
    • 1970-01-01
    • 2015-05-27
    • 1970-01-01
    • 2011-08-29
    • 2020-09-19
    • 2018-04-01
    相关资源
    最近更新 更多