在安装 Ruby gems 时,我收到以下错误:
ERROR: Could not find a valid gem 'bundler' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - Errno::ETIMEDOUT:
Failed to open TCP connection to api.rubygems.org:443 (A connection attempt fai
led because the connected party did not properly respond after a period of time,
or established connection failed because connected host has failed to respond.
- connect(2) for "api.rubygems.org" port 443) (https://api.rubygems.org/specs.4.
8.gz)
Run Code Online (Sandbox Code Playgroud)
我尝试安装的宝石:
NokogiriMechanizeBundler (明显地)都产生相同的错误,我猜这是所有的宝石,而不仅仅是捆绑器。
我以前从未见过这个,所以我不知道该怎么办,有人能告诉我发生了什么吗?值得一提的是,我在一个安全的网络上。
更新:
我试图在我的防火墙中初始化一个新规则,它允许我通过端口 443(gem install运行的端口)使用 TCP 连接;但是我仍然收到错误
更新:
我做了一些研究并尝试gem update --system通过此资源进行更新。但是它仍然抛出相同的错误,并且不允许我更新
我最近遇到了同样的问题,这是一个代理问题。
如果您在公司网络(工作、大学、宿舍等)上,您可能也是。确定您的代理服务器信息(请参阅网络设置)并尝试将代理信息添加到您的gem install命令中。
根据您的 gem 版本,其中之一应该可以工作:
gem install --http-proxy http://[user]:[password]@[server]:[port]
gem install -p http://[user]:[password]@[server]:[port]
Run Code Online (Sandbox Code Playgroud)
如果这是您的主网访问,那么您可以将其设置为默认使用。.gemrc在您的主目录(Windows 或 Linux 中的用户文件夹)中创建文件并在那里设置代理设置:
http_proxy: http://[user]:[password]@[server]:[port]
Run Code Online (Sandbox Code Playgroud)