每当我尝试关注this时,在第6步我输入代码并且不会安装,它只在命令行中告诉我以下内容。
Could not find a valid gem 'rails' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://api.rubygems.org/specs.4.8.gz)
我是命令行的新手,我不知道这意味着什么或为什么它不会让我安装rails。有人可以帮忙吗?
我还应该添加当我尝试检查ruby的版本时,它会给我正确的版本。但是当我尝试检查导轨时,我得到了。
C:\Sites>rails -v
The system cannot find the path specified.
更新
使用Windows 10
Ruby版本2.2.4
我不知道如何判断防火墙是否阻止了我
使用家庭网络
我只是试图运行它:
C:\Sites>gem update --system
ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://api.rubygems.org/specs.4.8.gz)
和
C:\Sites>gem install rails
ERROR: Could not find a valid gem 'rails' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://api.rubygems.org/specs.4.8.gz)
当我进入rails环境配置时,我注意到它没有显示rails的版本号,但显示了bat文件。
ruby:
bin: C:/RailsInstaller/Ruby2.0.0/bin/ruby.exe
version: ruby 2.2.4p230 (2015-12-16 revision 53155) [i386-mingw32]
rails:
bin: C:/RailsInstaller/Ruby2.0.0/bin/rails.bat
version:
答案 0 :(得分:0)
您可以按照以下步骤操作:
1. gem sources -a http://rubygems.org
2. gem install rails
答案 1 :(得分:0)
作为一种解决方法,您可以尝试在Gemfile中替换
source 'https://rubygems.org'
带
source 'http://rubygems.org'
以便SSL连接错误消失。这段代码位于Gemfile的顶部
注意 - 您正在获取MITM(中间人)攻击警告,因为您使用的是HTTP,而不是HTTPS(已加密)。这应该没问题,只是一个警告,不太可能发生任何实际的攻击。要摆脱此警告,请按照Here
步骤操作或者,您只需运行gem sources -a http://rubygems.org
即可通过http而不是https
虽然,如果您想通过SSL使用加密下载,请按照GitHub上的this guide引导您完成安装证书以信任RubyGems.org的过程
答案 2 :(得分:0)
这是用于修复windows中的ssl错误
1)下载certificate
2)将其保存到// An array with all the colors you want
let colors = [UIColor.redColor(),UIColor.blueColor(),UIColor.greenColor()]
// An integer to keep track of the current color
var actualIndex = 0
var myShapeNode : SKShapeNode!
override func didMoveToView(view: SKView) {
super.didMoveToView(view)
myShapeNode = SKShapeNode(circleOfRadius: 50)
myShapeNode.position = CGPointMake(size.width/2, size.height/2)
addChild(myShapeNode)
myShapeNode.strokeColor = colors[actualIndex]
myShapeNode.fillColor = colors[actualIndex]
}
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
super.touchesBegan(touches, withEvent: event)
actualIndex = (actualIndex+1)%colors.count //Goes back to 0 when reaches colors.count
myShapeNode.strokeColor = colors[actualIndex]
myShapeNode.fillColor = colors[actualIndex]
}
3)创建环境变量C:/RailsInstaller/Ruby2.0.0/ssl_certs/GlobalSignRootCA.pem
将其设置为SSL_CERT_FILE
4)然后宝石安装导轨
答案 3 :(得分:0)
所以我做了以下内容并修复了问题(貌似)
安装了PowerShell的Windows的
安装Windows PowerShell
将此1行代码粘贴到命令控制台中:(WIN + R,cmd)
powershell -Command "& {$fname='cacert.pem'; $outpath=\"$($(Get-ChildItem Env:USERPROFILE).Value)/$fname\"; Invoke-WebRequest http://curl.haxx.se/ca/$fname -OutFile \"$outpath\"; [Environment]::SetEnvironmentVariable('SSL_CERT_FILE', \"$outpath\", 'User')}"
脚本可以:
将其另存为%USERPROFILE%/cacert.pem ( C:\Users\__you__\cacert.pem)
将当前用户SSL_CERT_FILE
的持久性环境变量设置为%USERPROFILE%/cacert.pem