Rails 3App用にSMTPを設定しています。
この構成は機能します。
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:domain => "mydomain.com",
:user_name => "<username>",
:password => "<password>",
:authentication => "plain",
:enable_starttls_auto => true
}
しかし、この構成はそうではありません。 「ホスト名がサーバー証明書と一致しませんでした」と表示されます
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {
:address => "some_other_server.com",
:port => 587,
:domain => "mydomain.com",
:user_name => "<username>",
:password => "<password>",
:authentication => "plain",
:enable_starttls_auto => true
}
不思議なことに、同じ構成がRails 2.3.8。(:tls => true)で機能します。
どうしましたか?
ActionMailersmtp設定でこれを試してください。
:openssl_verify_mode => 'none'
それはあなたに安全な接続を提供しますが、物事を検証しません。本番アプリには最適なアイデアではないかもしれませんが、私にとってはうまくいきます。
私はまったく同じ問題を抱えていました。 ActionMailer :: Base.smtp_settingsを変更することで解決しました:
:enable_starttls_auto => true
に
:enable_starttls_auto => false
:user_nameの値に@ domain.comが含まれていることを確認する必要がありました
メーラー(アプリ/メーラーにあります)にデフォルトのアドレスを指定していますか?この問題が発生したことを最後に思い出したとき、メーラーのホスト名がSMTP設定のホスト名と一致しませんでした。