Heroku连接GitHub部署时报错remote could not connect or was closed
Heroku关联GitHub报「Error: remote could not connect or was closed」排查方案
按操作优先级从高到低排查:
- 本地浏览器与网络环境校验
先退出当前登录的Heroku、GitHub账号,清除两个站点的本地Cookie与缓存,打开浏览器无痕模式(禁用所有广告拦截、脚本拦截、隐私防护类插件)重新登录两个账号重试。如果开启了系统代理、网络加速工具,先切换为全局模式或临时关闭后重试,部分分流规则会截断OAuth授权流程中的跨域回调请求,直接导致连接被远端关闭。 - GitHub侧授权冲突清理
打开GitHub账号设置的已授权OAuth应用列表,找到所有Heroku相关的历史授权记录,全部执行撤销授权操作,避免残留的失效授权触发握手冲突,清理完成后再重新发起关联操作。 - Heroku侧异常实例规避
不要在之前创建失败的应用内反复重试关联,这类应用大概率残留了部署配置锁,会直接拦截后续关联请求。回到Heroku控制台重新创建一个全新的应用,优先进入Heroku账号全局设置的第三方集成页面,先在账号维度完成GitHub的授权绑定,再回到新应用的Deploy选项卡选择目标仓库,绕开应用内单点触发授权的异常路径。注意:两次关联重试的间隔不要短于3分钟,高频发起授权请求会触发Heroku临时风控,直接返回连接关闭错误。 - 兜底部署方案(无需修复网页端关联)
如果网页端关联始终失败,不需要卡在此处,直接安装Heroku命令行工具即可绕开该故障:- 本地克隆你fork完成的目标仓库
- 在仓库目录下执行
heroku login完成命令行账号登录 - 执行
heroku git:remote -a 你创建的Heroku应用名称绑定远程应用 - 后续执行
git push heroku main即可完成代码部署,和网页端GitHub自动部署的最终效果完全一致,不影响后续练习流程。
内容的提问来源于stack exchange,提问作者Robert Ludlow
相关产品推荐
相关产品推荐

