运行Azure CLI报代理URL无scheme需http/https开头错误如何解决
Azure CLI 代理URL缺少scheme报错排查方案
问题背景
完成Azure CLI安装后,执行az系列命令时报错提示代理URL缺少scheme标识,需以http://或https://开头。当前已完成全系统基础代理参数配置,其余应用代理适配均正常,仅Azure CLI触发异常,带调试参数执行身份登录命令的报错信息如下:
C:\Users\rnalla>az login --identity --verbose --debug Proxy URL had no scheme, should start with http:// or https://
排查解决步骤
- 校验Azure CLI内置代理配置
Azure CLI会优先读取自身存储的配置项,且不会自动为代理地址补全协议前缀,首先执行命令查看当前生效的代理配置:az config get network.proxy
重点检查返回结果中http-proxy、https-proxy字段值,如果值为类似127.0.0.1:7890的纯IP+端口格式、缺少http:///https://前缀,就会触发该报错。 - 修正错误代理配置
如果是Azure CLI内置配置的代理地址缺协议头,直接执行以下命令更新配置即可(将示例地址替换为实际代理地址):
如果内置配置无异常,再检查系统环境变量中的az config set network.proxy.http-proxy=http://127.0.0.1:7890 az config set network.proxy.https-proxy=http://127.0.0.1:7890HTTP_PROXY、HTTPS_PROXY、ALL_PROXY值,对不带协议头的配置项补全前缀,修正后重启终端再执行az命令验证。 - 排除配置格式冲突
若上述配置均正常,检查NO_PROXY环境变量是否存在多余分隔符、空值、格式错误的条目,这类格式问题也可能导致Azure CLI的代理解析逻辑异常,可临时清空所有代理相关环境变量测试,确认问题根因后再逐段修正配置。
问题根因说明:Azure CLI基于Python开发,依赖的网络请求库解析代理地址时严格要求带scheme前缀,不会像多数桌面应用那样自动补全
http://协议头,因此会出现其他应用代理正常、仅Azure CLI报错的情况。
内容的提问来源于stack exchange,提问作者RamNalla
相关产品推荐
相关产品推荐

