Google Apps でホストされている独自のドメイン名を持っています。私の電子メール送信は、ラップトップの開発モードで機能します。
Heroku (cedar スタック) での本番環境では、次のエラーが発生します: Net::SMTPAuthenticationError (535-5.7.8 ユーザー名とパスワードが受け入れられません。詳しくは、app/controllers/applicants_controller.rb:16:in `create' をご覧ください):
ここに私の production.rb ファイルがあります:
config.action_mailer.default_url_options = { :host => 'mydomain.com' }
# ActionMailer Config
# Setup for production - deliveries, no errors raised
config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.default :charset => "utf-8"
config.action_mailer.smtp_settings = {
address: "smtp.gmail.com",
port: 587,
domain: "mydomain.com",
authentication: "plain",
enable_starttls_auto: true,
user_name: "info@mydomain.com",
password: "mypassword"
}
contact_controller の create アクションは次のとおりです。
def create
@contact = Contact.new(params[:contact])
respond_to do |format|
if @contact.save
ContactMailer.new_contact_notice(@contact).deliver
format.html { redirect_to(:root, :notice => 'Thanks, Your information was successfully sent.') }
else
format.html { render :action => "show" }
end
end
end
エラーを示すHerokuのログの完全なセクションは次のとおりです。
2013-05-07T05:01:54.773576+00:00 app[web.1]: Started POST "/applicants" for 108.208.197.181 at 2013-05-07 05:01:54 +0000
2013-05-07T05:01:55.132454+00:00 app[web.1]: app/controllers/applicants_controller.rb:18:in `block in create'
2013-05-07T05:01:55.130426+00:00 app[web.1]:
2013-05-07T05:01:55.132454+00:00 app[web.1]:
2013-05-07T05:01:55.130426+00:00 app[web.1]: Sent mail to name@gmail.com (185ms)
2013-05-07T05:01:55.132454+00:00 app[web.1]:
2013-05-07T05:01:55.132454+00:00 app[web.1]: Net::SMTPAuthenticationError (535-5.7.8 Username and Password not accepted. Learn more at
2013-05-07T05:01:55.132454+00:00 app[web.1]: app/controllers/applicants_controller.rb:16:in `create'
2013-05-07T05:01:55.132454+00:00 app[web.1]: ):
2013-05-07T05:01:55.132454+00:00 app[web.1]:
最初にGmailアカウントにログインするなど、このエラーについて読んだことのいくつかを試しました. ログインしようとしているかどうかを確認する設定のどこにも表示されないので、確認できます。
他のアイデアはありますか?