Proxy PAC文件中的HTTPS

Proxy PAC文件中的HTTPS,proxy,pac,Proxy,Pac,我正在编写一个.pac文件,以便在不越狱的情况下与iOS5一起使用,但在匹配以“https”(例如:)开头的url时,我感到很麻烦 这是我的剧本: function FindProxyForURL(url, host) { if (shExpMatch(url, "https://*")) return "PROXY 123.123.123.123"; return 'DIRECT'; } 如果我匹配”https://test.com“,我怎样才能回来”https://123.123.

我正在编写一个.pac文件,以便在不越狱的情况下与iOS5一起使用,但在匹配以“https”(例如:)开头的url时,我感到很麻烦

这是我的剧本:

function FindProxyForURL(url, host) {
  if (shExpMatch(url, "https://*")) return "PROXY 123.123.123.123";
  return 'DIRECT';
}

如果我匹配”https://test.com“,我怎样才能回来”https://123.123.123.123“到URL吗?

这不应该被接受。如果可以,请投票删除


原始答复: 您不能在不破坏端到端安全性的情况下代理HTTPS协议,端到端安全性是HTTPS唯一的显著特征。匹配项“不起作用”的原因是HTTPS忽略了PAC文件

无论技术上是否可行,通过HTTPS在浏览器和设备代理之间路由流量也是毫无意义的。我想这是因为安全原因而无法实现的(这样用户就不会被愚弄,以为流量不安全了),但我没有进行调查。

使用以下方法:

if(shExpMatch(url,“https:*”)


这应该可以解决问题。

事实并非如此,HTTPS不会忽略PAC文件-可以使用CONNECT方法安全地代理HTTPS,该方法实际上只是将TCP流从客户端计算机通过代理转发到远程计算机。连接仍然加密,代理无法以纯文本形式查看任何流量。对。不忽略PAC文件,对于HTTPS目标,使用CONNECT方法。在这种情况下,代理不知道服务器和客户端之间发生的通信。添加我的评论,因为接受的答案传播了错误的信息。感谢更新。不幸的是,我无法删除此答案,因为它已被接受。