You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GitHub Workflow自托管Runner出现重复Authorization头错误

解决自托管GitHub Runner checkout时"Duplicate header: 'Authorization'"错误

这个错误的核心是Git请求时发送了两个重复的Authorization头,导致GitHub返回400错误。以下是针对自托管Runner的具体解决方法:

1. 清理自托管Runner的全局Git凭据

登录到你的自托管Runner机器,执行以下操作:

  • 取消全局Git凭据助手:
    git config --global --unset credential.helper
    
  • 检查并删除存储的GitHub凭据:
    • Linux/macOS:删除~/.git-credentials文件中相关的GitHub条目
    • Windows:打开「凭据管理器」,找到GitHub相关的凭据并删除

2. 显式指定checkout的token

修改你的checkout步骤,强制使用Workflow的GITHUB_TOKEN,避免与Runner本地凭据冲突:

- name: Checkout Repo
  uses: actions/checkout@v3
  with:
    fetch-depth: 0  # Fetch all commit history
    persist-credentials: false
    token: ${{ secrets.GITHUB_TOKEN }}

3. 排查Runner的环境变量和Git配置

在Workflow中添加调试步骤,确认是否有额外的Git配置或环境变量注入凭据:

- name: Debug Git Configuration
  run: |
    # 列出所有Git配置及其来源
    git config --list --show-origin
    # 检查可能影响凭据的环境变量
    echo "GIT_ASKPASS: $GIT_ASKPASS"
    echo "GIT_USERNAME: $GIT_USERNAME"

4. 重置自托管Runner

如果以上方法都无效,尝试重新注册自托管Runner,清除所有旧配置:

  1. 在GitHub仓库的「Settings > Actions > Runners」中删除现有Runner
  2. 按照官方步骤重新下载并注册Runner

内容的提问来源于stack exchange,提问作者Tharun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 12:46:18