7

我正在尝试使用 Charles Proxy 来调试我的 iPhone 上的一些性能问题。我使用“http 代理模式”完成了所有工作,但使用“socks 代理模式”却没有这样做。由于 iOS 在 http 代理下表现出与现实生活中不同的行为(请参阅http://www.charlesproxy.com/documentation/configuration/proxy-settings/),我真的很想让 socks 代理工作。

在我的 iPhone 上配置 socks 代理后,我无法连接到任何站点,并且在运行 Charles 的机器上嗅探表明,每当我尝试连接时都会重置。我错过了什么步骤?

非常感谢您解释如何使其在 Mac 或 Windows 上运行!

4

2 回答 2

4

使用 PAC 文件为 iOS 设置 Socks 代理

在你的 Mac 或网络上的某个地方启动 Apache 服务器(一个原始的gist就可以了)。创建一个简单的 PAC 文件。

代理.pac

function FindProxyForURL(url, host) {
   return "SOCKS <Address of Charles-The-Proxy>:<SOCKS port>";
}

然后将网络连接下的 iPhone 代理设置指向HTTP Proxy-> Auto-> http://<addressOfWebServer>/proxy.pac

最后说明

完成后不要忘记撤消代理设置。

于 2014-02-06T11:58:12.167 回答
4

根据查尔斯文档:https ://www.charlesproxy.com/documentation/configuration/browser-and-system-configuration/

自动配置

您还可以提供自动配置 URL,而不是输入手动配置。这种方法将使您的设备首先尝试使用 Charles,然后在 Charles 未运行时回退到使用直接连接。这是一种实验方法!

对于自动配置 URL,请输入:

https://chls.pro/XXXXpac 将 XXXX 替换为运行 Charles 的计算机的 IP 地址。这默认为端口 8888。如果您使用不同的端口,只需包含该端口,例如https://chls.pro/XXXX:XXXX.pac

您还可以使用自动配置规则在 iOS 的 SOCKS 代理模式下使用 Charles,尽管这不能作为手动设置使用。输入自动配置 URL,如下所示:

https://chls.pro/XXXX:XXXX.socks.pac

于 2018-05-22T08:53:39.037 回答