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

WSL Ubuntu 16.04下bundle install遇SSL证书验证失败求助

解决Ruby 1.8.7 + Rails 2.3.10下bundle install的SSL证书验证失败问题

根据你的环境(WSL Ubuntu 16.04、Ruby 1.8.7、Rails 2.3.10、OpenSSL 1.0.2t),你遇到的SSL证书验证问题核心是旧版本Ruby/Bundler与rubygems.org更新后的SSL证书不兼容,以下是针对你情况的针对性解决方案:

方案1:使用兼容Ruby 1.8.7的旧版Bundler

Ruby 1.8.7完全不支持2.x及以上版本的Bundler,默认安装的高版本Bundler会导致SSL处理逻辑异常:

  • 先安装适配的旧版Bundler:
    gem install bundler -v 1.17.3
    
  • 再用指定版本的Bundler执行安装:
    bundle _1.17.3_ install
    

方案2:手动指定CA证书路径

Ubuntu 16.04的系统CA证书可能无法被Ruby 1.8.7的老旧SSL库正确识别,通过环境变量强制指定证书文件:

export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
bundle install

如果系统证书仍无效,可以下载独立的CA证书包并指定:

# 用HTTP方式下载避免SSL拦截问题
curl -O http://curl.se/ca/cacert.pem
# 设置环境变量指向下载的证书文件
export SSL_CERT_FILE=$PWD/cacert.pem
bundle install

方案3:切换到兼容旧Ruby的gem源

rubygems.org的HTTPS连接对Ruby 1.8.7这类古董版本支持极差,可以尝试切换到国内的HTTP源:

  • 修改你的Gemfile,将原有source替换为:
    source 'http://gems.ruby-china.com'
    
  • 然后执行安装:
    bundle install
    

额外提示

Ruby 1.8.7和Rails 2.3.10都是停止维护多年的版本,不仅存在严重安全漏洞,还会持续遇到这类兼容性问题。如果业务允许,建议逐步升级到更高版本的Ruby和Rails,从根本上解决这类问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 08:17:00