2016-04-26 221 views
2

雖然安裝Ruby的寶石,我發現了以下錯誤:錯誤安裝Ruby寶石

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) 

寶石我已經嘗試安裝:

  • Nokogiri
  • Mechanize
  • (顯然)

所有產生相同的錯誤,我猜這是所有的寶石,不只是捆綁。

我從來沒有見過這個,所以我不知道該怎麼辦,有人可以告訴我發生了什麼事嗎?可能值得一提的是我在一個安全的網絡上。


UPDATE

我已經嘗試初始化我的防火牆的新規則,將允許我使用通過端口443的TCP連接(在端口gem install運行過的);但是我仍然得到錯誤


UPDATE

我做了一些研究,並試圖通過this資源使用gem update --system更新。但它仍然拋出相同的錯誤,並且不會允許我更新

+0

你是在代理的背後嗎? – Uzbekjon

+0

當您嘗試在瀏覽器中訪問https://rubygems.org/時會發生什麼情況? – user12341234

+0

@Uzbekjon我不能說。但是,它就是這樣的。我無法安裝任何我將試圖通過端口來允許它看到會發生什麼情況。 – 13aal

回答

0

我不完全知道發生了什麼。但是我能夠進入另一個網絡並下載寶石。

沒有代理服務器,沒有VPN設置,但有一個默認腳本,所以我猜測這跟它有關。

所以解決方案是我上了一個不同的網絡,併成功地安裝了我需要的東西

2

我最近有同樣的問題,它是一個代理問題。

如果你在公司網絡(工作,大學,宿舍等),你可能也是。確定您的代理服務器信息(請參閱網絡設置)並嘗試將代理信息添加到gem install命令。

根據您的寶石版本,其中之一應該工作:

gem install --http-proxy http://[user]:[password]@[server]:[port] 
gem install -p http://[user]:[password]@[server]:[port] 

如果這是你的主要網絡訪問,那麼你可以將其設置爲默認使用。創建.gemrc文件在您的家目錄(用戶文件夾在Windows或Linux),並設置代理服務器設置有:

http_proxy: http://[user]:[password]@[server]:[port] 
+0

這可能會工作和所有,除了我不是網絡管理員,所以我沒有訪問代理信息 – 13aal

+0

嘗試檢查瀏覽器中的代理設置。如果它沒有設置爲自動,只需將值粘貼到您的.gemrc文件。 – belgoros

+0

你確實在做。你在什麼操作系統上? Google,如何查看網絡和代理設置。你可能在DHCP網絡上。基本上,當您物理連接到服務器時,您的網絡設置是從「中央」服務器「發送/設置」的。 – Uzbekjon