Heroku CLI因cacert.pem配置问题无法运行,请求修复方案
Heroku CLI因缺失
cacert.pem无法运行的解决方法 问题描述
执行Heroku CLI命令时持续报错找不到cacert.pem文件,即使尝试移除证书也失败:
leder@home-ryzen:~/Git/ghost-v4-on-heroku-burzltag$ heroku certs:remove --name cacert.pem › Warning: heroku update available from 7.60.1 to 8.7.1. ▸ ENOENT: ENOENT: no such file or directory, open '/home/leder/Source/pfhp_production_heroku/cacert.pem'
所有Heroku CLI命令均受影响,无法正常操作。此前曾执行过以下命令:
heroku appsheroku certs:remove ...heroku config:set SSL_CERT_FILE=/home/leder/Source/pfhp_production_heroku/config/global-bundle.pem
目的是在Heroku中配置AWS SSL证书,但导致CLI无法正常工作。
解决方案
1. 临时恢复CLI功能(当前终端会话有效)
在当前终端中执行以下命令,取消错误设置的环境变量:
unset SSL_CERT_FILE
执行后,Heroku CLI会使用默认的证书配置,此时即可正常执行heroku certs:remove或其他命令。
2. 永久修复(避免重启终端后复发)
检查你的shell配置文件(如~/.bashrc、~/.zshrc或~/.profile),找到包含export SSL_CERT_FILE=/xxx/cacert.pem的行,将其删除或用#注释掉。
保存文件后,执行以下命令让修改立即生效(以~/.bashrc为例):
source ~/.bashrc
3. 正确配置AWS SSL证书到Heroku
应用的SSL证书无需通过SSL_CERT_FILE环境变量设置,应使用Heroku官方的证书管理命令:
- 准备好AWS提供的证书文件(包含证书链的
.pem文件和私钥文件) - 执行以下命令上传证书:
heroku certs:add path/to/aws-cert-chain.pem path/to/aws-private-key.pem --app your-app-name
- 验证证书状态:
heroku certs --app your-app-name
内容的提问来源于stack exchange,提问作者Leder
相关产品推荐
相关产品推荐

