背景:使用 whistle + SwitchyOmega 做本地代理
1、桌面端安装 whistle
macOS、Windows、Linux(ubuntu/fedora)
命令行安装 whistle
#安装
npm i -g whistle
#启动
w2 start
2、配合 SwitchyOmega 在单个浏览器使用
3、在 whistle 中配置代理
浏览器中打开http://127.0.0.1:8899
遇到的问题
请求接口服务报错 ERR_CERT_AUTHORITY_INVALID
查了一下这个错误 ERR_CERT_AUTHORITY_INVALID,它表示 SSL 证书验证失败,是HTTPS 连接时的常见问题。
并且whistle中也有一个飘红提示:Full functionality of the rules requires activation of the 'Enable HTTPS (Capture Tunnel Traffic)' option
意思是:当前规则的部分功能(特别是涉及 HTTPS 流量的拦截、修改或重定向)需要开启 HTTPS 捕获功能才能生效。
Whistle 默认只捕获 HTTP 流量,要处理 HTTPS 请求(如修改 HTTPS 请求头、重定向 HTTPS 站点、捕获 WebSocket 等),必须安装根证书并启用 HTTPS 拦截。
解决步骤:
- 下载并安装根证书 访问 Whistle 控制台,点击顶部菜单的 HTTPS 选项,或访问:local.whistlejs.com/#network 点击 "Root CA" 或 "Download Root CA" 下载证书文件 rootCA.crt。
- 双击下载的证书,在钥匙串访问中设置为"始终信任"
- 重启 Whistle 服务
w2 restart