Charles 在这条 HTTPS 路由上需要 Tor 的 HTTP 隧道
使用 Charles 的安全 Web 上游配置搭配本地 Tor HTTP CONNECT 监听器,而不是它不相关的 SOCKS 字段。
Charles 的 External Proxies 页面将 Web 上游与其 SOCKS 设置区分开来。其文档将该 SOCKS 设置分配给非 HTTP(S) 流量,例如端口转发;填写它并不会为捕获到的 HTTPS 请求选择 SOCKS 上游。
对于现有的 Tor 服务,HTTP 隧道监听器可以提供 Charles 的 HTTPS 上游所期望的接口。仅限回环的 torrc 条目可以是:
HTTPTunnelPort 127.0.0.1:8118
选择一个未使用的本地端口,并通过该 Tor 部署的正常配置生命周期应用更改。在 Charles 中启用 External Proxies,并将 Secure Web Proxy (HTTPS) 端点配置为 127.0.0.1 和该端口。
HTTPS 设置会选择目标使用 HTTPS 的请求。Tor 的监听器接受 HTTP CONNECT 来承载它们的 TCP 流;它不是 TLS 加密的 HTTPS 代理监听器。
这种安排专门用于 HTTPS 路由。HTTPTunnelPort 并不实现普通正向代理的绝对 URL GET 处理,因此不要以为同一条目也处理纯 HTTP 浏览。
请将 Charles 面向客户端的监听器与此上游端点分开。浏览器连接到 Charles;Charles 连接到 Tor 的隧道监听器。