Mac OSX系统代理设置完全被忽略无法生效问题求助
Mac系统配置本地Python代理不生效问题
我正尝试使用Python搭建自有代理服务器,代码运行在9090端口,但在Mac设备上修改代理配置后,相关配置似乎完全未生效。
配置详情见:
(我已确认点击保存并应用按钮)
我也已排查确认VPN未处于连接状态。
十分奇怪的是,我甚至可以将Web Proxy Server的IP修改为无效地址后仍能成功保存并应用:
这些配置同样不会生效。
我在苹果官方论坛也未找到有效解决方案。
排查及解决步骤
- 确认修改的是当前在用网卡的代理配置
Mac系统的代理配置是按网卡独立生效的,你需要确认当前上网用的网卡(Wi-Fi/有线以太网等)和你修改代理配置的网卡是同一个。
可以打开终端执行networksetup -listallnetworkservices列出所有网卡,再执行networksetup -getwebproxy "你的网卡名"查看当前生效的HTTP代理配置,和你界面设置的参数做核对。 - 匹配代理协议配置
如果你用的Python代理是HTTP协议,需要同时开启「网页代理(HTTP)」和「安全网页代理(HTTPS)」,两个选项都填写127.0.0.1和9090端口才能覆盖HTTP、HTTPS两类流量。如果是Socks协议的代理,要单独配置Socks代理选项,不要配置HTTP代理。 - 验证系统代理是否被其他规则覆盖
部分浏览器插件(如Proxy SwitchyOmega)、第三方网络工具会优先使用自身的代理配置,忽略系统代理。可以用curl命令直接验证系统代理是否生效,执行curl -v https://www.baidu.com,查看输出日志中是否有走你配置的127.0.0.1:9090代理的记录。 - 确认Python代理服务本身正常
执行curl -x 127.0.0.1:9090 https://www.baidu.com直接调用本地代理请求网址,如果请求失败,说明是代理服务本身的问题,和系统配置无关,可进一步检查代码运行是否有报错、9090端口是否被防火墙拦截、服务监听的地址是否为127.0.0.1。 - 重置网络配置
以上步骤排查后仍不生效,可以尝试删除当前在用的网卡后重新添加,再重新配置代理规则即可。
内容的提问来源于stack exchange,提问作者ben
相关产品推荐
相关产品推荐

