本文解决以下问题#
1. charles与shadowsocks共存#
- shadowsocks改为全局模式(PAC模式无效,必须使用全局模式)
- 全局模式下默认所有互联网请求全部走shadowsocks
- 此时如需访问内网地址
- 在Mac中打开 设置->网络->高级->代理,
Bypass proxy settings for these Hosts & Domains:
中填入内网IP - 如图:
- 如有多个地址,可配为134...*
- 在Mac中打开 设置->网络->高级->代理,
- 查看shadowsocks代理的本地http和https的端口(如上图)
- 一般为
127.0.0.1:1087
- 一般为
- 在Charles菜单栏找到
proxy -> external proxy settings
- 在http和https中填入127.0.0.1:1087
- 如图:
- 如有多个地址,可配为134...*
- 此时即可正常抓包,如果域名为内网地址,此时会无法访问
- 在Charles菜单栏找到
proxy -> external proxy settings
- 在
ByPass external proxies for the following hosts:
中填入内网ip
- 在Charles菜单栏找到
- 此时已完美解决Charles和shadowsocks共存问题
2. 转发线上页面请求到本地工程#
- Charles菜单栏 -> proxy -> MacOs Proxy
- 右键请求列表中的url或包,选中
Map Remote...
- 填入对应的URL相关信息即可
3. 截取MacOSHttps请求#
- “Help” -> “SSL Proxying” -> “Install Charles Root Certificate”
- 在
keychain
处将新安装的证书设置为永久信任
- 在
- Preferences -> Proxy -> SSL Proxying Settings
- Add -> 直接点击OK(截取所有https请求)
- Add -> 直接点击OK(截取所有https请求)
本作品系原创,采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,转载请注明出处。