尝试安装 gems 时,当它尝试从 production.s3.rubygems.org 获取规范文件时遇到“错误请求 400”错误。所有 Ruby 和 Rubygems 版本的问题都是一样的。
该系统在 VMWare ESX 托管的 Ubuntu 10.10 上运行,在 NAT 交换机(Linux -> ESX -> Intranet -> NAT)后面有桥接网络。我有一个相同的系统在运行正常的类似网络(Linux -> ESX -> Intranet -> 透明企业防火墙+代理)上的不同 ESX 上运行。apt-get 和其他网络工作正常。
有什么办法可以解决这个问题,还是我必须手动下载所有宝石?
# ping production.s3.rubygems.org
PING s3-1-w.amazonaws.com (72.21.202.165) 56(84) bytes of data.
64 bytes from 72.21.202.165: icmp_req=1 ttl=242 time=139 ms
# gem install -V nokogiri
GET http://rubygems.org/latest_specs.4.8.gz
302 Found
GET http://production.s3.rubygems.org/latest_specs.4.8.gz
400 Bad Request
HEAD http://rubygems.org/specs.4.8.gz
302 Found
HEAD http://production.s3.rubygems.org/specs.4.8.gz
400 Bad Request
HEAD http://rubygems.org/yaml
302 Found
HEAD http://production.s3.rubygems.org/yaml
400 Bad Request
ERROR: http://rubygems.org/ does not appear to be a repository
Error fetching remote data: bad response Bad Request 400 (http://production.s3.rubygems.org/yaml)
Falling back to local-only install
ERROR: Could not find a valid gem 'nokogiri' (>= 0) in any repository