7

我按照以下 SO 问题中的示例成功设置了 Apache 转发代理:设置具有身份验证的 Apache 代理

它运行良好,除了通过 https 访问站点时,它说它找不到该站点。例如,Chrome 提供

Error 111 (net::ERR_TUNNEL_CONNECTION_FAILED): Unknown error.

在服务器上,我什至没有在访问日志中看到任何内容。对于我的代理设置,我为httpand配置了相同的设置https(即代理服务器上的端口 80)。

您是否有一个如何使用 Apache 为 https 设置转发代理的示例?

4

2 回答 2

14

看来我唯一缺少的是我没有启用mod_proxy_connect这是通过

sudo a2enmod proxy_connect

引用mod_proxy_connect 文档页面

该模块需要 mod_proxy 的服务。它提供对 CONNECT HTTP 方法的支持。此方法主要用于通过代理服务器隧道 SSL 请求

于 2013-06-09T11:44:39.400 回答
3

您是尝试终止 SSL 还是只是尝试创建转发代理而不处理任何 SSL 证书?您遇到的问题是因为在 HTTPS 代理期间,浏览器尝试创建 HTTP 隧道,并且您的服务器似乎未正确配置为处理隧道。您可以在此处查看另一个示例:实现简单的 HTTPS 代理应用程序

这是另一个关于使用 HTTP 隧道代理 HTTPS 流量的有用主题:Tunnel over HTTPS

如果您可以选择 Apache 以外的其他东西,我建议您使用强大的转发代理,例如为处理此类设置而构建的SquidTrafficServer 。

于 2013-06-09T02:20:25.790 回答