pdm self update 504 gateway timeout
红军不怕远征难,万里长城今犹在,不见当年秦始皇
执行如下命令:
pdm self update --verbose
时,报了504 gateway timeout的错误
症状:使用的是内网环境的pypi mirror,本地Windows有这个问题,服务器Linux系统没有这个问题。
经过层层排查,发现是httpx在windows环境读取了注册表里的ProxyServer,但是没有读取ProxyOverride,导致内网地址走了代理,从而引起了响应超时。
解决:从注册表里复制ProxyOverride的值,新建系统变量NO_PROXY,并粘贴进去。
export NO_PROXY="*.<inner-domain>"
# 例如:export NO_PROXY="*.my-company.com;10.*;192.*"
参考:https://github.com/encode/httpx/issues/1536
Option for defining proxy environment variables (http_proxy & https_proxy) in pyproject.toml · Issue #2752 · pdm-project/pdm · GitHub