我刚刚升级到Rails 3.2.8
并更新了我的所有宝石。我想测试我的网站,所以我开始注册,但当我点击加入按钮时,它给了我错误:
OpenSSL::SSL::SSLError in RegistrationsController#create
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
app/models/user.rb:28:in `send_welcome_email'
我正在使用Devise 2.1.2
,这是我的用户模型:
class User < ActiveRecord::Base
attr_accessible :email, :password, :remember_me
attr_accessor :accessible # something for devise i think
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable,
:validatable, :email_regexp => /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i
after_create :send_welcome_email
private
def send_welcome_email
UserMailer.welcome_email(self).deliver
end
end
我猜这与我的 development.rb 中的电子邮件设置有关。
require 'tlsmail'
Net::SMTP.enable_tls(OpenSSL::SSL::VERIFY_NONE)
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.perform_deliveries = true
ActionMailer::Base.raise_delivery_errors = true
ActionMailer::Base.smtp_settings = {
:enable_starttls_auto => true,
:address => 'smtp.gmail.com',
:port => 587,
:tls => true,
:domain => 'app.com',
:authentication => :plain,
:user_name => 'support@app.com',
:password => '******'
}
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
如何更正此问题?当我去3.2.8
时,我才开始接受这个。如果它有帮助我就在Windows 7上。
答案 0 :(得分:10)
RailsApps Project的以下帖子详细解释了问题所在,并为RVM,OSX和Windows提供了多种解决方案。
http://railsapps.github.com/openssl-certificate-verify-failed.html
由于您使用的是Windows,因此您需要download and install a certificate file才能解决问题。 (有关更好的解释,请参阅上面的链接帖子)
此问题还有github issue。