ruby-on-rails – Rails 3动作邮件OpenSSL :: SSL :: SSLError
发布时间:2020-12-17 04:21:48 所属栏目:百科 来源:网络整理
导读:当我尝试通过联系表单发送电子邮件时,我得到一个OpenSSL :: SSL :: SSLError. 在我的config / application.rb中,我已经添加了. config.action_mailer.raise_delivery_errors = trueconfig.action_mailer.delivery_method = :smtp ActionMailer::Base.smtp_se
当我尝试通过联系表单发送电子邮件时,我得到一个OpenSSL :: SSL :: SSLError.
在我的config / application.rb中,我已经添加了. config.action_mailer.raise_delivery_errors = true config.action_mailer.delivery_method = :smtp ActionMailer::Base.smtp_settings = { :address => "mail.vinderhimlen.dk",:port => 587,:user_name => "asd@vinderhimlen.dk",:password => "x",:authentication => :login } 我的表格: <%= simple_form_for [@support],:url => { :action => "create" },:html => { :method => :post } do |f| %> <%= f.input :sender_name,:label => 'Navn' %> <%= f.input :email,:label => 'E-mail' %> <%= f.input :support_type,:collection => ['Feedback','Idé',"Rapporter fejl",'Business','Andet'],:prompt => "Valg type",:label => 'Erinde' %> <%= f.label :Besked %> <%= f.text_area :content,:label => 'Besked',:style => 'width:500px;',%> <%= f.submit "submit",:value => 'Send besked' %> <% end %> 我的支持控制器: class SupportsController < ApplicationController def new # id is required to deal with form @support = Support.new(:id => 1) end def create @support = Support.new(params[:support]) if @support.save redirect_to('/',:notice => "Support was successfully sent.") else flash[:alert] = "You must fill all fields." render 'new' end end end 我的支持模式: class Support include ActiveModel::Validations validates_presence_of :email,:sender_name,:support_type,:content # to deal with form,you must have an id attribute attr_accessor :id,:email,:content def initialize(attributes = {}) attributes.each do |key,value| self.send("#{key}=",value) end @attributes = attributes end def read_attribute_for_validation(key) @attributes[key] end def to_key end def save if self.valid? Notifier.support_notification(self).deliver return true end return false end end 我的config / enviroments / devolpment: Konkurranceportalen::Application.configure do # Settings specified here will take precedence over those in config/application.rb # In the development environment your application's code is reloaded on # every request. This slows down response time but is perfect for development # since you don't have to restart the webserver when you make code changes. config.cache_classes = false # Log error messages when you accidentally call methods on nil. config.whiny_nils = true config.perform_delivery = true # Show full error reports and disable caching config.consider_all_requests_local = true config.action_view.debug_rjs = true config.action_controller.perform_caching = false # Don't care if the mailer can't send config.action_mailer.raise_delivery_errors = true # Print deprecation notices to the Rails logger config.active_support.deprecation = :log # Only use best-standards-support built into browsers config.action_dispatch.best_standards_support = :builtin end 我的rails在提交表单时登录: Started POST "/supports" for 127.0.0.1 at 2011-05-31 14:07:07 +0200 Processing by SupportsController#create as HTML Parameters: {"utf8"=>"?£?","authenticity_token"=>"b4ILe7Xu4moToY8PN1X4wdyejz6 DQwnZ69FPevAWuSI=","support"=>{"sender_name"=>"dfsdf","email"=>"mail@freelance rbasen.dk","support_type"=>"Feedback","content"=>"dsdsfsdfsdfsdfsdfsadasdasd"},"commit"=>"Send besked"} ←[1m←[36mSQL (0.0ms)←[0m ←[1mSELECT SUM(`tags`.`konkurrancers_count`) AS sum_ id FROM `tags`←[0m ←[1m←[35mSQL (10.0ms)←[0m describe `kategoris_konkurrancers` ←[1m←[36mKonkurrancer Load (0.0ms)←[0m ←[1mSELECT `konkurrancers`.* FROM `kon kurrancers`←[0m ←[1m←[35mCACHE (0.0ms)←[0m SELECT `konkurrancers`.* FROM `konkurrancers` ←[1m←[36mTag Load (1.0ms)←[0m ←[1mSELECT `tags`.* FROM `tags`←[0m Rendered notifier/support_notification.html.erb (1.0ms) Sent mail to asd@vinderhimlen.dk (277ms) Date: Tue,31 May 2011 14:07:08 +0200 From: asd@freelancerbasen.dk To: asd@vinderhimlen.dk Message-ID: <4de4d9ecc67fdsfsdfsdf4ad@Home-Pc.mail> Subject: New Feedback Mime-Version: 1.0 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable =EF=BB=BFhello world! dsdsfsdfsdfsdfsdfsadasdasd= Completed in 865ms OpenSSL::SSL::SSLError (hostname was not match with the server certificate): app/models/support.rb:24:in `save' app/controllers/supports_controller.rb:9:in `create' Rendered C:/Ruby192/lib/ruby/gems/1.9.1/gems/actionpack-3.0.3/lib/action_dispatc h/middleware/templates/rescues/_trace.erb (1.0ms) ←[1m←[35mKonkurrancer Load (1.0ms)←[0m SELECT `konkurrancers`.* FROM `konkurr ancers` LIMIT 15 OFFSET 0 ←[1m←[36mSQL (4.0ms)←[0m ←[1mSHOW TABLES←[0m ←[1m←[35mSQL (5.0ms)←[0m SHOW TABLES Rendered C:/Ruby192/lib/ruby/gems/1.9.1/gems/actionpack-3.0.3/lib/action_dispatc h/middleware/templates/rescues/_request_and_response.erb (252.0ms) Rendered C:/Ruby192/lib/ruby/gems/1.9.1/gems/actionpack-3.0.3/lib/action_dispatc h/middleware/templates/rescues/diagnostics.erb within rescues/layout (318.0ms) 更新: 在我的config / application.rb中: config.action_mailer.smtp_settings = {:enable_starttls_auto => false } config.action_mailer.raise_delivery_errors = true config.action_mailer.delivery_method = :smtp ActionMailer::Base.smtp_settings = { :address => "mail.vinderhimlen.dk",:authentication => :login,:domain => "vinderhimlen.dk",:enable_starttls_auto => false } 解决方法
你可以试试
:openssl_verify_mode => 'none' 每Undocumented ActionMailer openssl_verify_mode option (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |