追云加速 发布页

macOS High Sierra 代理设置:旧版入口、HTTP/SOCKS/PAC、命令行与恢复直连

更新于 2026-11-09 · zhuiyunjiasu.shop

简答:macOS High Sierra 10.13 设置代理,打开“苹果菜单→系统偏好设置→网络”,选择当前联网的 Wi‑Fi 或以太网,进入“高级→代理”,再按提供方给出的类型、地址、端口和认证信息配置。最快判断方法是先确认“网络服务、代理类型、地址端口、实际使用的应用”这四项;需要终端操作时,可用 networksetup 查询或修改对应服务,但命令行环境变量只影响当前 Shell 及其启动的进程。

定义:macOS High Sierra 代理设置,是为某个网络服务配置 HTTP、HTTPS、SOCKS 或 PAC 参数,使支持该代理方式的应用通过指定服务器连接网络。

先看 30 秒速查卡:先判断该看哪一节

本文是面向 macOS High Sierra 的第三方使用指南,不代表任何代理服务或客户端的官方页面。High Sierra 使用“系统偏好设置”,不要套用新版本 macOS 的“系统设置”路径。

当前问题与最快处理入口
你现在的情况先做什么成功信号仍失败时
还没有设置代理确认当前联网服务,再进入“高级→代理”看到 HTTP、HTTPS、SOCKS、PAC 等选项检查是否误选了未连接的服务
知道服务器和端口只勾选提供方明确支持的协议并填写字段点击“好→应用”后,目标应用连接行为改变核对地址、端口、认证和绕过列表
拿到 PAC 地址勾选“自动代理配置”,填写 PAC URL系统能读取 PAC 文件确认 PAC 地址可访问,不要把订阅或单节点链接当 PAC
关闭后仍像有代理取消代理选项、删除 PAC URL,点击“应用”当前网络服务不再使用已勾选的系统代理排查 VPN、代理客户端或安全软件是否接管网络
只想让 Terminal 或开发工具走代理使用当前 Shell 的环境变量或工具自己的代理配置该命令或工具能通过代理完成请求不要用浏览器结果替代命令行工具验证

Apple 的代理字段说明包含自动代理发现、PAC、HTTP、HTTPS、SOCKS 以及绕过主机和域名等选项。Apple 也说明,Safari 中的代理入口会打开网络设置页面,可参考 Apple 的 Mac 代理设置说明 和 Apple 的 Safari 代理设置说明。

图形界面设置:High Sierra 的旧版入口和字段填写

  1. 选择当前网络服务:打开“苹果菜单→系统偏好设置→网络”,查看左侧的 Wi‑Fi、以太网或其他服务,选择当前显示为已连接的项目。Wi‑Fi 和以太网通常是两个不同的网络服务,不能假设在 Wi‑Fi 上设置后插网线也会自动使用同一组参数。
  2. 打开代理页面:点击“高级”,再点击“代理”。如果你看到的是现代 macOS 的“详细信息→代理”,说明入口不是 High Sierra 的界面。
  3. 填写 HTTP 或 HTTPS:勾选“网页代理(HTTP)”或“安全网页代理(HTTPS)”,分别填写服务器地址和端口。只有提供方明确给出对应协议时才启用,不要因为端口相同就自行推断两者可以互换。
  4. 填写 SOCKS:如果拿到的是 SOCKS 代理,勾选 SOCKS 代理,填写主机名或 IP 地址及端口。不要把 SOCKS 地址改写成 HTTP 或 HTTPS。
  5. 填写账号密码:如果代理要求认证,勾选需要密码的选项,再填写用户名和密码。账号、密码、地址和端口都应以网络管理员或服务提供方给出的资料为准,本文不提供可直接使用的示例账号。
  6. 配置 PAC:如果拿到的是自动代理配置文件地址,勾选“自动代理配置”,把完整 PAC URL 填入 URL 字段。PAC 是一种自动选择代理的配置文件地址,不是普通订阅链接、二维码内容或单个节点链接。
  7. 填写绕过列表:在绕过主机和域名的字段中填写不需要代理的主机、域名或本地地址,多个项目按界面提示分隔。建议先少填,避免把目标域名误加入绕过列表。
  8. 保存设置:点击“好”返回网络页面,再点击“应用”。只点击“好”而没有应用,不能作为设置已经生效的判断。

Apple 的字段说明显示,HTTP、HTTPS、SOCKS 都需要服务器地址和端口;PAC 则填写自动配置文件地址,绕过列表用于指定不使用代理的主机和域名。可参考 Apple 的代理字段与绕过设置说明 以及 Apple Developer 的代理配置字段文档。

networksetup 命令行:查询、设置、关闭和清除

High Sierra 自带 networksetup。下面的命令以“Wi‑Fi”为示例;如果本机服务名称不是这个写法,先执行列出服务的命令,再把示例中的服务名替换为实际名称。服务名含空格时必须保留引号。

1. 列出网络服务和查看当前代理状态

networksetup -listallnetworkservices

networksetup -getwebproxy "Wi-Fi"
networksetup -getsecurewebproxy "Wi-Fi"
networksetup -getsocksfirewallproxy "Wi-Fi"
networksetup -getautoproxyurl "Wi-Fi"
networksetup -getproxybypassdomains "Wi-Fi"

这些查询分别用于查看 HTTP、HTTPS、SOCKS、PAC 和绕过域名状态。若你的服务名称是“Ethernet”或其他名称,替换命令中的“Wi‑Fi”。命令参数以本机执行 man networksetup 的帮助为准;可对照 networksetup 的命令手册页面 核对参数名称。

2. 设置 HTTP、HTTPS 或 SOCKS 代理

networksetup -setwebproxy "Wi-Fi" proxy.example 8080 off
networksetup -setsecurewebproxy "Wi-Fi" proxy.example 8080 off
networksetup -setsocksfirewallproxy "Wi-Fi" proxy.example 1080 off

上面的 proxy.example、8080 和 1080 只是字段示意,不是可用服务器。最后的 off 表示不启用认证;如果代理要求认证,需要按本机帮助中的参数顺序填写认证状态、用户名和密码。不要把真实密码写进脚本、历史记录或公开截图。

3. 设置 PAC 和绕过列表

networksetup -setautoproxyurl "Wi-Fi" "https://proxy.example/proxy.pac"
networksetup -setproxybypassdomains "Wi-Fi" localhost 127.0.0.1
networksetup -setproxyautodiscovery "Wi-Fi" off

PAC URL 必须替换成实际地址;如果不再使用 PAC,可用 -getautoproxyurl 先确认当前状态,再在图形界面删除 URL 或按本机帮助执行对应清除操作。绕过列表会影响哪些请求走代理,因此修改前应记录原值。

4. 只关闭代理,不删除网络服务

networksetup -setwebproxystate "Wi-Fi" off
networksetup -setsecurewebproxystate "Wi-Fi" off
networksetup -setsocksfirewallproxystate "Wi-Fi" off
networksetup -setproxyautodiscovery "Wi-Fi" off

这些命令的作用范围是指定网络服务的代理状态,不等于退出 VPN、关闭网络过滤器或停止其他应用的网络接管。执行后再次用 -getwebproxy、-getsecurewebproxy 和 -getsocksfirewallproxy 检查状态,再用实际应用验证。

Terminal、git、npm 和 Homebrew:环境变量不是系统代理开关

图形界面代理和命令行工具代理不是同一层。Terminal 中设置环境变量,通常只影响当前 Shell 以及由它启动的子进程;它不会自动修改“系统偏好设置→网络→代理”,也不保证已经打开的应用立即读取新值。

当前 Shell 的 HTTP/HTTPS 示例

export HTTP_PROXY="http://proxy.example:8080"
export HTTPS_PROXY="http://proxy.example:8080"
export http_proxy="$HTTP_PROXY"
export https_proxy="$HTTPS_PROXY"

curl -I https://example.com

如果代理是 SOCKS,可按工具支持的格式设置对应变量,例如:

export ALL_PROXY="socks5://proxy.example:1080"

示例中的主机和端口必须替换为实际值。若账号密码包含特殊字符,不建议直接拼入命令行 URL,以免被 Shell 解析或留在历史记录中。

恢复当前 Shell 的直连环境

unset HTTP_PROXY HTTPS_PROXY http_proxy https_proxy ALL_PROXY all_proxy

git、npm、Homebrew 等工具可能读取环境变量,也可能有自己的配置文件或命令行参数。遇到“Safari 能打开但某个工具失败”,应在出问题的工具中单独核验代理来源;不要把浏览器能用直接等同于所有开发工具都能用。

Safari、Chrome、Firefox 与开发工具:按应用验证,不要只看勾选状态

不同应用的核验方式
应用或工具先按什么检查注意事项
Safari先检查当前网络服务的系统代理,再重新打开页面Apple 的 Safari 代理入口会跳转到网络代理设置;页面失败还可能与自定义代理、DNS、VPN 或安全软件有关。
Chrome先验证系统代理,再查看当前版本是否有独立代理参数不要仅凭“系统代理已勾选”判断 Chrome 一定采用同一配置。
Firefox在 Firefox 自己的连接设置中核验代理来源如果 Safari 能用而 Firefox 不能,优先比较两者的代理模式、认证和绕过列表。
Terminal查看当前 Shell 的环境变量,必要时使用 curl 的显式代理参数系统代理和 Shell 环境变量是两套配置。
git、npm、Homebrew分别检查环境变量、工具配置或命令行参数应在实际失败的工具中验证,不能用浏览器结果替代。

由于不同应用版本可能采用不同的网络库和代理来源,本文不把“所有应用都会继承系统代理”作为结论。若只有某个应用失败,先关闭其他变量,使用同一网络、同一代理地址和同一目标分别比较,再查看该应用当前版本的代理设置说明。Apple 也提醒,自定义代理、DNS、VPN 或其他安全软件可能影响网页访问,可参考 Apple 关于 Safari 网络问题的排查说明。

关闭代理并恢复直连:记录原值,按当前服务回滚

  1. 回到“系统偏好设置→网络”,选择之前配置过的 Wi‑Fi 或以太网服务。
  2. 点击“高级→代理”,先记录 HTTP、HTTPS、SOCKS、PAC、自动代理发现和绕过列表的当前状态。
  3. 取消不再使用的 HTTP、HTTPS、SOCKS、自动代理配置和自动代理发现选项,并删除 PAC URL。
  4. 点击“好→应用”,重新打开浏览器或重新启动需要重新读取网络设置的工具。
  5. 确认当前网络服务不再使用已勾选的系统代理,再排除 VPN、代理客户端、网络过滤器或安全软件的影响。

“恢复直连”的成功信号只表示当前网络服务不再使用这些系统代理选项,不代表 VPN、网络过滤器或其他应用接管已经解除。如果代理选项刚关闭又自动出现,记录变化时间和被写回的字段,再检查相关软件或管理策略,不要反复删除整个网络服务。

代理设置后仍无法联网:按最小范围逐项排查

  1. 先查当前服务:确认设置的是正在使用的 Wi‑Fi 或以太网,而不是未连接的服务或其他网络位置。
  2. 再查协议、地址和端口:确认代理类型与提供方给出的类型一致,地址没有空格或拼写错误,端口是数字,HTTP、HTTPS、SOCKS 没有误用彼此的端口。
  3. 检查认证:如果页面反复要求密码或返回认证错误,重新核对用户名、密码和“代理服务器需要密码”的开关。
  4. 检查绕过列表:目标域名若在绕过列表中,访问可能不会经过代理。暂时缩小例外范围,再用同一目标测试。
  5. 检查 PAC:PAC 地址需要能被系统读取;如果手动代理和 PAC 同时启用,先保留提供方明确要求的那一种,减少冲突变量。
  6. 检查应用差异:Safari、Chrome、Firefox、Terminal 和开发工具可能读取不同配置。必须在实际失败的应用中验证。
  7. 检查 VPN 或安全软件:如果代理状态会自动恢复,或者关闭后仍有网络接管,暂时退出可能影响网络的工具进行对比。Apple 明确指出,VPN 和安全软件可能影响网页访问。
  8. 最后检查 DNS、证书和普通网络:如果代理服务器已经能连接但只有部分域名失败,再看 DNS、证书拦截和目标站点策略。单独 ping 失败不能直接证明网页业务不可用,因为 ICMP、DNS 和代理连接可能不是同一路径。

最短回退路径是:记录当前值,关闭当前网络服务的代理选项,删除 PAC URL,点击“应用”,退出可能接管网络的工具,再用同一个应用测试直连。如果直连恢复,问题集中在代理配置或接管软件;如果直连也失败,应转到普通网络、DNS 或路由排查。

适用范围与核验说明

本文针对 macOS High Sierra 10.13 的旧版“系统偏好设置”路径。现代 macOS 的菜单名称不同,不能直接套用新系统教程。本文参考的资料包括 Apple 的代理字段说明、Safari 代理入口说明、Apple 关于网络设置影响网页访问的排查建议,以及 networksetup 命令手册页面。

截至 2026 年 11 月 9 日,本文没有把具体代理服务器、端口、账号密码、PAC 地址、客户端兼容性或连接速度写成固定事实。客户端是否支持 High Sierra、是否读取系统代理以及是否需要额外权限,仍需以该客户端当前公开说明和本机实际表现为准。

常见问题

macOS High Sierra 的代理设置在哪里?

打开“苹果菜单→系统偏好设置→网络”,选择当前使用的 Wi‑Fi 或以太网,点击“高级→代理”。设置后点击“好”,再点击“应用”。

Wi‑Fi 设置了代理,插网线后为什么不生效?

代理设置按网络服务保存,Wi‑Fi 和以太网通常是不同服务。插网线后应重新进入网络设置,选择当前连接的以太网服务并检查代理字段。

HTTP、HTTPS 和 SOCKS 代理可以全部勾选吗?

不要凭猜测全部勾选。按照网络管理员或服务提供方给出的协议、地址和端口配置;只提供 SOCKS 时,不要自行把同一参数复制到 HTTP 和 HTTPS。

PAC 地址能不能直接当作普通代理服务器填写?

不能。PAC 是自动代理配置文件地址,应放在“自动代理配置”的 URL 字段;它不是普通网页首页、订阅链接或单个节点链接。

networksetup 命令执行后,为什么浏览器没有变化?

先确认命令作用于当前联网的网络服务,并再次执行对应的 get 命令查看状态。还要重新打开可能缓存网络设置的应用;如果只设置了 Shell 环境变量,它不会自动修改系统代理。

Safari 能用代理,但 Firefox 或 Terminal 不能用,说明系统代理失效吗?

不一定。不同应用可能使用独立代理设置,Terminal 和开发工具还可能读取环境变量或自己的配置。应在实际失败的应用中单独检查代理来源。

关闭代理后仍然自动出现 PAC 地址怎么办?

先取消自动代理配置、删除 PAC URL 并点击“应用”。如果设置随后被写回,检查 VPN、代理客户端、网络过滤器或安全软件是否在接管或修改网络设置。

关闭系统代理后是不是所有网络接管都会一起关闭?

不是。关闭当前网络服务的系统代理,只能说明这些代理选项不再启用;VPN、网络过滤器和其他应用的接管状态需要分别检查。

相关阅读

参考资料

  1. Apple:Change proxy settings on Mac
  2. Apple:Enter proxy server settings on Mac
  3. Apple:Set up a proxy server using Safari on Mac
  4. Apple Developer:NetworkProxyConfiguration.Proxies
  5. Apple:If Safari doesn't work as expected on Mac
  6. networksetup 命令手册页面