### [Windows系统代理和WinHTTP代理有什么区别?命令行不生效的原因](https://www.jiyueip.com/article/7024) **Published:** 2026-07-21T03:08:36 **Author:** 斑斓助理 **Excerpt:** Windows设置页面的系统代理、WinHTTP代理和应用自带代理并非同一套。浏览器生效但PowerShell或服务不生效时,应先确认程序使用哪个网络栈。 Windows设置里打开代理,Edge查询出口已经变化,PowerShell脚本、Windows Update或后台服务却还是直连。问题往往不是代理节点,而是这些程序读取的代理配置并不相同。 ## 三套常见来源 | 配置来源 | 常见使用者 | | --- | --- | | 用户系统代理 | 浏览器及部分桌面应用 | | WinHTTP代理 | 部分系统组件、服务和程序 | | 应用自带设置/环境变量 | curl、Git、开发工具等 | ## 先看WinHTTP当前状态 ``` netsh winhttp show proxy ``` 显示“Direct access”只说明WinHTTP没有设置代理,不代表浏览器系统代理没开。不要在不清楚影响范围时直接导入或重置,企业电脑还可能由组策略管理。 ## 命令行工具要看自己的文档 很多工具支持 `HTTP_PROXY`、`HTTPS_PROXY` 或命令行参数,也有工具维护独立配置。Git、包管理器和脚本运行环境的行为并不完全一致。先用该程序的调试输出确认实际连接,再决定改哪一层。 ## 一个安全的排查顺序 1. 浏览器确认系统代理是否生效; 2. 运行 `netsh winhttp show proxy` 只读检查; 3. 查看目标程序官方代理说明; 4. 核对IPv4、IPv6和DNS是否被覆盖; 5. 记录修改,准备恢复直连的方法。 需要让指定Windows程序使用SOCKS5时,可评估[Proxifier](https://www.jiyueip.com/link/5669)等按程序规则工具,但应在合法授权环境中使用并核对软件来源。不要为了“全局”而同时修改多套配置。 **Tags:** HTTP代理, PAC代理, Proxifier, 设备网络配置 **Categories:** 行业洞察 ---