我目前有一个 DYNDNS 标准帐户和一个 apache 网络服务器(称之为 srv1),所有端口 80 和端口 443 流量都转发到它。
我内部有另一个 Web 服务器(称之为 srv2),它配置了来自子域的 srv1 端口 80 的反向代理。
它可以工作,但是我无法让端口 443 上的 sv1 的反向代理工作。
答案1
我敢打赌你正在尝试代理 HTTPS 流量。如果你考虑 HTTPS 流量的工作原理,它从客户端到服务器是完全加密的。为了将 SSL HTTP 流量传递到另一台服务器,你需要在 SRV1 上接收 HTTPS,然后将其作为普通的 HTTP 传递到 SRV2。如果 procy 规则的目标是 SSL VirtualHost,那么当它需要 HTTPS 时,它将接收 HTTP 流量。
先前的 ServerFault 问题讨论了如何详细配置它,但总体要点是:
#SRV1 Config
<VirtualHost *:443>
SSLEngine On
...other SSL params...
ProxyPass / http://ip.address.for.srv2/
</VirtualHost>
这个问题可以解决,看看此主题举个例子。虽然这不是很令人愉快,但从你的用例来看,在 SRV1 上卸载 SSL 可能更容易。