<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Clash on Zata-砸它</title><link>https://www.zata.cc/tags/clash/</link><description>Recent content in Clash on Zata-砸它</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><copyright>Example Person</copyright><lastBuildDate>Sat, 06 Jun 2026 21:43:43 +0800</lastBuildDate><atom:link href="https://www.zata.cc/tags/clash/index.xml" rel="self" type="application/rss+xml"/><item><title>代理配置与环境变量实战</title><link>https://www.zata.cc/p/%E4%BB%A3%E7%90%86%E9%85%8D%E7%BD%AE%E4%B8%8E%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E5%AE%9E%E6%88%98/</link><pubDate>Sat, 06 Jun 2026 10:00:00 +0800</pubDate><guid>https://www.zata.cc/p/%E4%BB%A3%E7%90%86%E9%85%8D%E7%BD%AE%E4%B8%8E%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E5%AE%9E%E6%88%98/</guid><description>&lt;h2 id="概述">概述
&lt;/h2>&lt;p>代理配置分为两个层面：&lt;/p>
&lt;ul>
&lt;li>&lt;strong>系统代理&lt;/strong>：由操作系统或 GUI 客户端（如 Clash Verge）管理，主要影响浏览器和 GUI 应用。&lt;/li>
&lt;li>&lt;strong>环境变量代理&lt;/strong>：通过 &lt;code>http_proxy&lt;/code> / &lt;code>https_proxy&lt;/code> / &lt;code>ALL_PROXY&lt;/code> 等环境变量设置，主要影响命令行工具。&lt;/li>
&lt;/ul>
&lt;p>两者互相独立。系统代理设置了，终端里的 curl/git/docker 不一定走代理；反之亦然。&lt;/p>
&lt;hr>
&lt;h2 id="一macos-系统代理clash-verge">一、macOS 系统代理（Clash Verge）
&lt;/h2>&lt;p>Clash Verge 开启「系统代理」后，会自动配置 macOS 的网络代理设置，浏览器等 GUI 应用会走代理。&lt;/p>
&lt;h3 id="11-查看当前系统代理">1.1 查看当前系统代理
&lt;/h3>&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">networksetup -getwebproxy &lt;span class="s2">&amp;#34;Wi-Fi&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">networksetup -getsecurewebproxy &lt;span class="s2">&amp;#34;Wi-Fi&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>&lt;img src="https://www.zata.cc/p/%E4%BB%A3%E7%90%86%E9%85%8D%E7%BD%AE%E4%B8%8E%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E5%AE%9E%E6%88%98/image/index/1780752703648.png"
width="608"
height="203"
srcset="https://www.zata.cc/p/%E4%BB%A3%E7%90%86%E9%85%8D%E7%BD%AE%E4%B8%8E%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E5%AE%9E%E6%88%98/image/index/1780752703648_hu5340957982220615921.png 480w, https://www.zata.cc/p/%E4%BB%A3%E7%90%86%E9%85%8D%E7%BD%AE%E4%B8%8E%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E5%AE%9E%E6%88%98/image/index/1780752703648_hu5180979553952737406.png 1024w"
loading="lazy"
alt="1780752703648"
class="gallery-image"
data-flex-grow="299"
data-flex-basis="718px"
>&lt;/p>
&lt;h3 id="12-绕过列表bypass">1.2 绕过列表（Bypass）
&lt;/h3>&lt;p>在 Clash Verge 的「系统代理」设置中配置绕过地址，如：（一般默认就有了）&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-fallback" data-lang="fallback">&lt;span class="line">&lt;span class="cl">127.0.0.1, localhost, 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>&lt;strong>注意&lt;/strong>：系统代理的绕过列表主要影响浏览器和 GUI 应用，&lt;strong>对命令行工具不生效&lt;/strong>。&lt;/p>
&lt;hr>
&lt;h2 id="二shell-环境变量配置">二、Shell 环境变量配置
&lt;/h2>&lt;h3 id="21-基础变量">2.1 基础变量
&lt;/h3>&lt;p>在 &lt;code>~/.zshrc&lt;/code>（或 &lt;code>~/.bashrc&lt;/code>）中添加：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 代理地址（根据你的客户端端口修改）&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">export&lt;/span> &lt;span class="nv">http_proxy&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;http://127.0.0.1:7897&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">export&lt;/span> &lt;span class="nv">https_proxy&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;http://127.0.0.1:7897&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">export&lt;/span> &lt;span class="nv">ALL_PROXY&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;socks5://127.0.0.1:7897&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 绕过本地和局域网&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">export&lt;/span> &lt;span class="nv">NO_PROXY&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;127.0.0.1,localhost,::1,192.168.0.0/16,10.0.0.0/8,172.16.0.0/12&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>生效：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="nb">source&lt;/span> ~/.zshrc
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="22-快速开关代理">2.2 快速开关代理
&lt;/h3>&lt;p>可以添加别名方便切换：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># ~/.zshrc&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">alias&lt;/span> &lt;span class="nv">proxy&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s1">&amp;#39;export http_proxy=http://127.0.0.1:7897; export https_proxy=http://127.0.0.1:7897; export ALL_PROXY=socks5://127.0.0.1:7897&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">alias&lt;/span> &lt;span class="nv">unproxy&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s1">&amp;#39;unset http_proxy; unset https_proxy; unset ALL_PROXY&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="23-只对当前命令生效">2.3 只对当前命令生效
&lt;/h3>&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="nv">http_proxy&lt;/span>&lt;span class="o">=&lt;/span>http://127.0.0.1:7897 curl -I https://github.com
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;hr>
&lt;h2 id="三no_proxy-绕过详解">三、NO_PROXY 绕过详解
&lt;/h2>&lt;h3 id="31-问题现象">3.1 问题现象
&lt;/h3>&lt;p>Clash Verge 开启系统代理后，curl 访问 &lt;code>localhost&lt;/code> 返回 404：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">curl http://localhost:8000/api/xxx
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># {&amp;#34;detail&amp;#34;:&amp;#34;Not Found&amp;#34;}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>&lt;code>curl -v&lt;/code> 发现请求走了代理：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-gdscript3" data-lang="gdscript3">&lt;span class="line">&lt;span class="cl">&lt;span class="n">Uses&lt;/span> &lt;span class="n">proxy&lt;/span> &lt;span class="n">env&lt;/span> &lt;span class="n">variable&lt;/span> &lt;span class="n">http_proxy&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="s1">&amp;#39;http://127.0.0.1:7897&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="32-原因">3.2 原因
&lt;/h3>&lt;p>Clash Verge 的绕过列表不影响命令行工具。curl 读取 &lt;code>http_proxy&lt;/code> 环境变量后，会尝试通过代理访问 localhost，而代理服务器不认识这个本地地址。&lt;/p>
&lt;h3 id="33-解决">3.3 解决
&lt;/h3>&lt;p>补充 &lt;code>NO_PROXY&lt;/code> 环境变量：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="nb">export&lt;/span> &lt;span class="nv">NO_PROXY&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;127.0.0.1,localhost,::1,192.168.0.0/16,10.0.0.0/8,172.16.0.0/12&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>&lt;strong>常见 NO_PROXY 值&lt;/strong>：&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>地址&lt;/th>
&lt;th>说明&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>127.0.0.1&lt;/code>&lt;/td>
&lt;td>本地 IPv4&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>localhost&lt;/code>&lt;/td>
&lt;td>本地主机名&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>::1&lt;/code>&lt;/td>
&lt;td>本地 IPv6&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>192.168.0.0/16&lt;/code>&lt;/td>
&lt;td>私网 A 段&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>10.0.0.0/8&lt;/code>&lt;/td>
&lt;td>私网 B 段&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>172.16.0.0/12&lt;/code>&lt;/td>
&lt;td>私网 C 段&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="34-验证">3.4 验证
&lt;/h3>&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">curl -v http://localhost:8000/health
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 不再出现 &amp;#34;Uses proxy env variable&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;hr>
&lt;h2 id="四git-代理配置">四、Git 代理配置
&lt;/h2>&lt;p>Git 不读取 &lt;code>http_proxy&lt;/code> 环境变量（某些版本会读，但不可靠），需要单独配置：&lt;/p>
&lt;h3 id="41-httphttps-代理">4.1 HTTP/HTTPS 代理
&lt;/h3>&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">git config --global http.proxy http://127.0.0.1:7897
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">git config --global https.proxy http://127.0.0.1:7897
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="42-socks5-代理">4.2 SOCKS5 代理
&lt;/h3>&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">git config --global http.proxy socks5://127.0.0.1:7897
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="43-取消代理">4.3 取消代理
&lt;/h3>&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">git config --global --unset http.proxy
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">git config --global --unset https.proxy
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="44-仅对特定域名配置">4.4 仅对特定域名配置
&lt;/h3>&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">git config --global http.https://github.com.proxy http://127.0.0.1:7897
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;hr>
&lt;h2 id="五docker-代理配置">五、Docker 代理配置
&lt;/h2>&lt;p>Docker 的代理分两个层面：&lt;strong>Daemon 代理&lt;/strong>（影响 &lt;code>docker pull&lt;/code> 等命令）和&lt;strong>客户端默认代理&lt;/strong>（影响 &lt;code>docker run&lt;/code> / &lt;code>docker build&lt;/code> 自动注入的环境变量）。&lt;/p>
&lt;h3 id="51-docker-客户端默认代理">5.1 Docker 客户端默认代理
&lt;/h3>&lt;p>配置 &lt;code>~/.docker/config.json&lt;/code>，让 &lt;code>docker run&lt;/code> 和 &lt;code>docker build&lt;/code> 自动注入代理环境变量：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">mkdir -p ~/.docker
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>&lt;code>~/.docker/config.json&lt;/code>：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-json" data-lang="json">&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;#34;proxies&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;#34;default&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;#34;httpProxy&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;http://127.0.0.1:7897&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;#34;httpsProxy&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;http://127.0.0.1:7897&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nt">&amp;#34;noProxy&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;127.0.0.1,localhost,::1&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>&lt;strong>注意&lt;/strong>：这个配置只影响容器内部和构建过程，&lt;strong>不影响&lt;/strong> &lt;code>docker pull&lt;/code> 拉取镜像。&lt;/p>
&lt;h3 id="52-docker-daemon-代理">5.2 Docker Daemon 代理
&lt;/h3>&lt;p>&lt;code>docker pull&lt;/code> 等命令由 Docker Daemon 执行，Daemon 作为系统服务运行，不读取 Shell 环境变量，需要单独配置。&lt;/p>
&lt;p>&lt;strong>注意：macOS 上的特殊行为&lt;/strong>&lt;/p>
&lt;p>Docker Desktop for Mac 运行在一个轻量级 Linux VM 中，这个 VM 的网络流量&lt;strong>经过 macOS 主机的网络栈&lt;/strong>。因此即使没有在 Docker 中手动配置代理，Clash Verge 等工具开启的 &lt;strong>macOS 系统代理也会被 VM &amp;ldquo;捎带&amp;rdquo; 走&lt;/strong>。这会导致：&lt;/p>
&lt;ul>
&lt;li>开启 Clash 系统代理时，&lt;code>docker pull&lt;/code> 能正常拉取（走了代理）&lt;/li>
&lt;li>关闭 Clash 系统代理后，&lt;code>docker pull&lt;/code> 可能失败或极慢（因为原先走代理的流量现在直连不通了）&lt;/li>
&lt;/ul>
&lt;p>如果你需要 Docker 在&lt;strong>无论系统代理开或关&lt;/strong>的情况下都能稳定工作，建议显式配置 Daemon 代理（见下方）。&lt;/p>
&lt;p>&lt;strong>Linux (systemd)&lt;/strong>：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">sudo mkdir -p /etc/systemd/system/docker.service.d
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">sudo tee /etc/systemd/system/docker.service.d/http-proxy.conf &lt;span class="s">&amp;lt;&amp;lt; &amp;#39;EOF&amp;#39;
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="s">[Service]
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="s">Environment=&amp;#34;HTTP_PROXY=http://127.0.0.1:7897&amp;#34;
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="s">Environment=&amp;#34;HTTPS_PROXY=http://127.0.0.1:7897&amp;#34;
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="s">Environment=&amp;#34;NO_PROXY=localhost,127.0.0.1,::1&amp;#34;
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="s">EOF&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">sudo systemctl daemon-reload
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">sudo systemctl restart docker
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>&lt;strong>macOS (Docker Desktop)&lt;/strong>：&lt;/p>
&lt;p>Settings → Resources → Proxies → Manual proxy configuration&lt;/p>
&lt;h3 id="53-容器内代理">5.3 容器内代理
&lt;/h3>&lt;p>运行容器时传入：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">docker run -e &lt;span class="nv">http_proxy&lt;/span>&lt;span class="o">=&lt;/span>http://host.docker.internal:7897 &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> -e &lt;span class="nv">https_proxy&lt;/span>&lt;span class="o">=&lt;/span>http://host.docker.internal:7897 &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> -e &lt;span class="nv">NO_PROXY&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;localhost,127.0.0.1&amp;#34;&lt;/span> &lt;span class="se">\
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="se">&lt;/span> ubuntu
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>注意：容器内访问宿主机代理，macOS 用 &lt;code>host.docker.internal&lt;/code>，Linux 用宿主机的局域网 IP。&lt;/p>
&lt;hr>
&lt;h2 id="六包管理器代理">六、包管理器代理
&lt;/h2>&lt;h3 id="61-pip">6.1 pip
&lt;/h3>&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">pip install package-name --proxy http://127.0.0.1:7897
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 或设置环境变量&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">export&lt;/span> &lt;span class="nv">PIP_PROXY&lt;/span>&lt;span class="o">=&lt;/span>http://127.0.0.1:7897
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="62-npm">6.2 npm
&lt;/h3>&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">npm config &lt;span class="nb">set&lt;/span> proxy http://127.0.0.1:7897
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">npm config &lt;span class="nb">set&lt;/span> https-proxy http://127.0.0.1:7897
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 取消&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">npm config delete proxy
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">npm config delete https-proxy
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="63-uv">6.3 uv
&lt;/h3>&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># uv 读取标准环境变量&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">export&lt;/span> &lt;span class="nv">http_proxy&lt;/span>&lt;span class="o">=&lt;/span>http://127.0.0.1:7897
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">export&lt;/span> &lt;span class="nv">https_proxy&lt;/span>&lt;span class="o">=&lt;/span>http://127.0.0.1:7897
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 或使用 --native-tls（某些证书问题场景）&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">uv pip install package-name --native-tls
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;hr>
&lt;h2 id="七常用工具代理">七、常用工具代理
&lt;/h2>&lt;table>
&lt;thead>
&lt;tr>
&lt;th>工具&lt;/th>
&lt;th>代理方式&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>curl&lt;/code>&lt;/td>
&lt;td>读取 &lt;code>http_proxy&lt;/code> / &lt;code>https_proxy&lt;/code> / &lt;code>ALL_PROXY&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>wget&lt;/code>&lt;/td>
&lt;td>读取 &lt;code>http_proxy&lt;/code> / &lt;code>https_proxy&lt;/code>，或用 &lt;code>-e http_proxy=&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ssh&lt;/code>&lt;/td>
&lt;td>用 &lt;code>-o ProxyCommand=&amp;quot;nc -X 5 -x 127.0.0.1:7897 %h %p&amp;quot;&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>brew&lt;/code>&lt;/td>
&lt;td>读取环境变量，或 &lt;code>HOMEBREW_CURLRC=1&lt;/code> + &lt;code>~/.curlrc&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>go get&lt;/code>&lt;/td>
&lt;td>读取 &lt;code>http_proxy&lt;/code> / &lt;code>https_proxy&lt;/code>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="71-curl-指定代理">7.1 curl 指定代理
&lt;/h3>&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">curl -x http://127.0.0.1:7897 https://api.github.com
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 或 SOCKS5&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">curl -x socks5://127.0.0.1:7897 https://api.github.com
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="72-wget-指定代理">7.2 wget 指定代理
&lt;/h3>&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">wget -e &lt;span class="nv">http_proxy&lt;/span>&lt;span class="o">=&lt;/span>http://127.0.0.1:7897 https://example.com
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;hr>
&lt;h2 id="八一键验证">八、一键验证
&lt;/h2>&lt;p>配置完成后，验证代理是否生效：&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 查看当前代理环境变量&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">echo&lt;/span> &lt;span class="s2">&amp;#34;HTTP: &lt;/span>&lt;span class="nv">$http_proxy&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">echo&lt;/span> &lt;span class="s2">&amp;#34;HTTPS: &lt;/span>&lt;span class="nv">$https_proxy&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">echo&lt;/span> &lt;span class="s2">&amp;#34;ALL: &lt;/span>&lt;span class="nv">$ALL_PROXY&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">echo&lt;/span> &lt;span class="s2">&amp;#34;NO: &lt;/span>&lt;span class="nv">$NO_PROXY&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 测试外网（应走代理）&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">curl -s -o /dev/null -w &lt;span class="s2">&amp;#34;%{http_code}&amp;#34;&lt;/span> https://github.com
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 测试本地（应直连）&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">curl -v http://localhost:8000 2&amp;gt;&lt;span class="p">&amp;amp;&lt;/span>&lt;span class="m">1&lt;/span> &lt;span class="p">|&lt;/span> grep -i &lt;span class="s2">&amp;#34;proxy&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1"># 查看出口 IP（对比开关代理）&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">curl -s https://httpbin.org/ip
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;hr>
&lt;h2 id="九常见问题">九、常见问题
&lt;/h2>&lt;h3 id="q1-终端已经设置了代理但某些命令还是不生效">Q1: 终端已经设置了代理，但某些命令还是不生效？
&lt;/h3>&lt;p>某些工具（如 Git）不读环境变量，需要单独配置。详见上文各节。&lt;/p>
&lt;h3 id="q2-docker-容器内无法访问宿主机代理">Q2: Docker 容器内无法访问宿主机代理？
&lt;/h3>&lt;ul>
&lt;li>macOS: 用 &lt;code>host.docker.internal:7897&lt;/code>&lt;/li>
&lt;li>Linux: 用宿主机局域网 IP，如 &lt;code>192.168.1.x:7897&lt;/code>&lt;/li>
&lt;li>或配置 Docker 的 &lt;code>--network host&lt;/code>（仅限 Linux）&lt;/li>
&lt;/ul>
&lt;h3 id="q3-no_proxy-设置后不生效">Q3: NO_PROXY 设置后不生效？
&lt;/h3>&lt;p>注意大小写：&lt;/p>
&lt;ul>
&lt;li>大多数工具读 &lt;code>NO_PROXY&lt;/code>&lt;/li>
&lt;li>部分老工具读 &lt;code>no_proxy&lt;/code>
建议两个都设：&lt;/li>
&lt;/ul>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-bash" data-lang="bash">&lt;span class="line">&lt;span class="cl">&lt;span class="nb">export&lt;/span> &lt;span class="nv">NO_PROXY&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;...&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">export&lt;/span> &lt;span class="nv">no_proxy&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="nv">$NO_PROXY&lt;/span>&lt;span class="s2">&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item></channel></rss>