【问题标题】:Apache ssl frontend for plain http tomcat give unsecure content用于普通 http tomcat 的 Apache ssl 前端提供不安全的内容
【发布时间】:2012-07-13 10:48:54
【问题描述】:

我们已将 Apache 设置为普通 http jboss(tomcat) 的 ssl 前端

<VirtualHost *:5555>
    ServerName my.server.com

    SSLEngine on
    SSLCertificateFile /x.crt
    SSLCertificateKeyFile /x.pem
    SSLProxyEngine on
    ...
    ...
    ProxyPass / http://my.server:8080/
    ProxyPassReverse / http://my.server.com:8080/
</VirtualHost>

在我们的jsp中,我们有这样的东西:

<link href="/css/my.css" rel="stylesheet" type="text/css">

当我们加载页面时

https://my.server.com:5555

浏览器告诉我们这个页面有不安全的内容,因为它会从

http://my.server.com:5555/css/my.css

我不想在 href 中使用绝对 URL。我可以以某种方式告诉tomcat使用来自apache的https而不在tomcat中设置ssl吗?或者是在 Apache 和 Tomcat 中设置 ssl 的最佳组合?

我已经尝试了 Dirk 指出的解决方案,但仍然无法正常工作。

服务器.xml

<Connector port="8080" protocol="HTTP/1.1" enableLookups="false" proxyPort="5555" scheme="https" secure="true" />

我仍然收到有关不安全内容的错误。是因为struts 1.1 没有使用request.getScheme() 还是因为Apache 和Tomcat 之间的通信是纯http 和Apache think

<link href="/css/my.css" rel="stylesheet" type="text/css">

应该从

下载
http://my.server.com:5555/css/my.css

在将其发送回浏览器之前?

提前谢谢

【问题讨论】:

    标签: apache tomcat mod-proxy


    【解决方案1】:

    我猜这个问题是您的(tomcat)服务器认为它仍然存在于 http 地址(您可以通过查看标题和 HTML 来确认)。

    因此它在页面中包含对 http 地址的引用,而没有意识到请求来自 https 版本。

    假设您想要所有流量 https(并且 http 路径被阻止和/或 tomcat 绑定到本地主机) - 您想检查 http://tomcat.apache.org/tomcat-7.0-doc/proxy-howto.html 以了解如何告诉 tomcat 它不在它可以看到的地址- 但在您从 apache 向 Internet 公开的地址(即前门)。

    你所追求的是proxyName、proxyPort以及scheme和secure。

    参见http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2007800 的例如选项 4 和 3。

    【讨论】:

    • 最后一个链接中的选项 4 正是我想要的。
    • 好的 - 检查 HTML 页面中的内容 - 并检查页面中的确切内容 - 硬编码到错误位置的绝对链接;或相对链接 - 进入错误页面与协议层、浏览器或某些 javascript 有关。一个好的第二个检查是查看是否从新的浏览器转到 https://..:5555/。这会告诉你某些东西是否是硬编码的。然后我们就可以开始追踪这件事的源头了。
    • 发现问题。这是一个设置的基本标签,因此所有相对路径都在使用它。现在它正在工作。非常感谢
    • @chitech:你能告诉我那个基本标签设置在哪里吗?我有一个类似的问题。提前致谢。
    猜你喜欢
    • 2014-04-28
    • 1970-01-01
    • 1970-01-01
    • 2018-06-15
    • 2021-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-03
    相关资源
    最近更新 更多