好吧,我随处可见,但如果有人知道我在哪里可以找到解决方案,很抱歉再问一遍这个问题。
我们正在寻求实施此解决方案: HTTP客户端 - > Apache 2.4反向代理 - > HTTP Server =>工作正常 HTTPS客户端 - > Apache 2.4反向代理 - > HTTPS服务器=>工作正常
但是,当HTTPS服务器回复“302”重定向标头时,标头中的服务器名称不会转换为客户端已知的服务器名称。因此,由于DNS错误,客户端无法连接。
我们无法在DNS中添加后端服务器名称,因此我们需要该解决方案才能正常工作。
重要提示:HTTP中的相同功能。这意味着当服务器回复是HTTP中的“302”重定向头时,没有问题。即使重定向的目标是HTTPS链接,它也能工作。所以无法正常工作的是从HTTPS重定向到HTTPS。 后端Web服务器是Tomcat。
问题是:在HTTPS标头中,重定向网址为“https://[backendname]/something.html”,但我们希望它为“https://[servername]/something.html”
我们检查过日志文件中没有错误(错误级别设置为“debug”)。
以下是我们的虚拟站点配置:
<VirtualHost [reverse proxy IP]:443>
SSLEngine on
SSLProxyEngine on
SSLCertificateFile D:/Apache24/ssl/certs/servername.cer
SSLCertificateKeyFile D:/Apache24/ssl/private/servername.key
ServerName [servername]
ProxyPass / https://[backendname]:443/
ProxyPassReverseCookiePath / https://[backendname]:443/
ProxyPassReverse / https://[backendname]:443/
SetOutputFilter proxy-html
ProxyHTMLEnable On
ProxyHTMLURLMap https://[backendname] https://[servername]
ErrorLog D:/Apache24/logs/custom/[servername]_error.log
CustomLog D:/Apache24/logs/custom/[servername]_access.log combined
SetEnv nokeepalive ssl-unclean-shutdown
</VirtualHost>
与Apache激活的模块相关的问题:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_html_module modules/mod_proxy_html.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule xml2enc_module modules/mod_xml2enc.so
因此,非常感谢任何帮助完成这项工作。
感谢。
答案 0 :(得分:1)