![HTTPS 反向代理旧 tomcat 应用程序](https://linux22.com/image/699597/HTTPS%20%E5%8F%8D%E5%90%91%E4%BB%A3%E7%90%86%E6%97%A7%20tomcat%20%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F.png)
我正在尝试将旧的 Tomcat 置于 Apache HTTPS 反向代理之后。我配置了 https 虚拟主机来执行实际代理,并配置了 http 虚拟主机以将所有内容重定向到 https:
https 代码片段:
ProxyRequests Off
ProxyPass /old_app/ http://192.168.1.18:8080/old_app/
ProxyPassReverse /old_app/ http://192.168.1.18:8080/old_app/
http 片段:
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
问题是网站显示了,但没有 CSS 或图像。如果使用 Chrome 开发者控制台检查,我会看到很多有关混合内容的错误,这些错误被阻止是因为最初在 http 中引用。我四处搜索,找到了一些关于修改代理网站的建议,但在我的处境下,我无法修改 Tomcat webapp。有办法解决这个问题吗?或者唯一的方法是修改 old_app 源代码?也许切换到 Nginx 并进行一些特定的配置?