ActionMailer Error: hostname was not match with the server certificate

Published on Author Akhil Bansal9 Comments

You guys may have stuck with following error while using ActionMailer with Rails 2.2.2 .

OpenSSL::SSL::SSLError (hostname was not match with the server certificate):
    /usr/lib/ruby/1.8/openssl/ssl.rb:123:in `post_connection_check'
    /usr/lib/ruby/1.8/net/smtp.rb:582:in `tlsconnect'
    /usr/lib/ruby/1.8/net/smtp.rb:562:in `do_start'
    /usr/lib/ruby/1.8/net/smtp.rb:525:in `start'
    /vendor/rails/actionmailer/lib/action_mailer/base.rb:671:in `perform_delivery_smtp'
    /vendor/rails/actionmailer/lib/action_mailer/base.rb:526:in `__send__'
    /vendor/rails/actionmailer/lib/action_mailer/base.rb:526:in `deliver!'
    /vendor/rails/actionmailer/lib/action_mailer/base.rb:392:in `method_missing'
    /app/controllers/users_controller.rb:40:in `send_email_to_confirm_user'

Actually, Rails 2.2.2 turn on STARTTLS if it is available in Net::SMTP (added in Ruby 1.8.7) and the SMTP server supports it.

If you use postfix, then you fix it quickly by disabling tls by setting “smtpd_use_tls=no” in /etc/postfix/main.cf .

Remember to restart postfix and rails app server.

9 Responses to ActionMailer Error: hostname was not match with the server certificate

  1. I have a VPS, that I am trying to get action mailer to work with. I don’t really want to turn off tls. Is there a way to get ruby to use tls without this error?

  2. In the Rails 3 initializer, enter the following code to inform ActionMailer to “ignore” the OpenSSL error.

    ActionMailer::Base.smtp_settings = {
    :enable_starttls_auto => false
    }

Leave a Reply

Your email address will not be published. Required fields are marked *