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

推送至Heroku失败:Ruby 2.3.4安装错误求助

解决Heroku推送时Ruby 2.3.4安装失败的问题

你的问题出在Heroku自动推断了Ruby版本——虽然你没在Gemfile里指定,但Rails 5.0.3默认对应的Ruby版本是2.3.4,而这个版本不仅已经不再被Heroku官方支持,还出现了安装包下载损坏的情况(日志里的gzip: stdin: unexpected end of file就是证据)。下面是两个靠谱的解决办法:

方案一:明确指定兼容的Ruby版本(优先推荐)

这个方法最简单直接,不需要调整太多配置:

  1. 在你的Gemfile最顶部添加一行Ruby版本声明,选一个和Rails 5.0.3兼容且Heroku支持的版本,比如2.6.10:
    ruby '2.6.10'
    
  2. 本地执行bundle install更新你的Gemfile.lock文件
  3. 提交修改到git:
    git add Gemfile Gemfile.lock
    git commit -m "Specify supported Ruby version 2.6.10 for Heroku deployment"
    
  4. 重新推送到Heroku:git push heroku master

方案二:升级Heroku应用的运行栈

你的日志显示当前用的是heroku-18栈,这个栈已经停止维护,旧栈上的旧Ruby版本安装包可能已经被移除。升级到新栈可以从根本上避免这类问题:

  1. 先查看当前应用的栈:heroku stack
  2. 设置为最新的稳定栈(比如heroku-22):heroku stack:set heroku-22
  3. 重新推送代码到Heroku

注意:升级栈可能需要你调整部分依赖gem以适配新的系统环境,所以如果只是想快速解决当前推送问题,优先选方案一。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:25:23