2011-03-29 69 views
0

当试图安装gems时,当它尝试从production.s3.rubygems.org获取specs文件时,会遇到“Bad Request 400”错误。所有Ruby和Rubygems版本的问题都是一样的。对于在Amazon S3上托管的规范文件,Rubygems Bad Request 400

系统在VMWare ESX托管的Ubuntu 10.10上运行,并在NAT交换机后面使用桥接网络(Linux - > ESX - > Intranet - > NAT)。我有一个相同的系统运行在类似的网络上的其他ESX上,可以正常运行(Linux - > ESX - > Intranet - > Transparent Corporate Firewall + Proxy)。 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 

回答

0

解决:

1)下载和复制http://production.s3.rubygems.org/specs.4.8.gz到主机拥有WWW的根

2)添加127.0.0.1 production.s3.rubygems.org到/ etc /主机

+0

如果您的问题解决了,请不要忘记接受此答案。 – 2011-03-29 21:56:06