Heroku 曼德里尔没有';t记录错误,但从未发送电子邮件
我有一个rails应用程序,我在其中构建了一个联系人表单。 它在本地使用此配置:Heroku 曼德里尔没有';t记录错误,但从未发送电子邮件,heroku,mandrill,Heroku,Mandrill,我有一个rails应用程序,我在其中构建了一个联系人表单。 它在本地使用此配置: config.action_mailer.default_url_options = { :host => 'localhost:3000' } config.action_mailer.raise_delivery_errors = true config.action_mailer.delivery_method = :smtp config.action_mailer.smtp_set
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: "smtp.gmail.com",
port: 587,
domain: ENV["GMAIL_DOMAIN"],
authentication: "plain",
enable_starttls_auto: true,
user_name: ENV["GMAIL_USERNAME"],
password: ENV["GMAIL_PASSWORD"]
}
end
现在我想使用Mandrill在Heroku上运行它,所以这是我的production.rb
config.action_mailer.smtp_settings = {
:address => "smtp.mandrillapp.com",
:port => 587,
:user_name => ENV["MANDRILL_USERNAME"],
:password => ENV["MANDRILL_APIKEY"]
}
当我访问网站时,填写表格并单击“发送”,这是日志:
2014-04-07T23:35:56.661073+00:00应用程序[网站1]:处理人
ContatoController#创建为HTML 2014-04-07T23:35:56.661073+00:00
app[web.1]:参数:{“utf8”=>“??”,“auth”
诱惑_令牌“=>”,
“contato”=>{“name”=>“test1”,“email”=>”myEmail@email.com",
“消息”=>“sdfsdffsd”,“昵称”=>“},“提交”=>“发送”}
2014-04-07T23:35:56.661073+00:00应用程序[网站1]:参数:
{“utf8”=>“?”,“auth”
诱惑_令牌“=>”5769b554vJsVK3KldK/EmSaN8yUF/Z4S7LZDLZ6XE=“,
“contato”=>{“name”=>“test1”,“email”=>”myEmail@email.com",
“message”=>“sdfsdffsd”、“nicknam e”=>”},“commit”=>“Send”}
2014-04-07T23:35:56.668905+00:00应用程序[网站1]:渲染
供应商/bundle/ruby/1.9.1
/gems/mail\u form-1.5.0/lib/mail\u form/views/mail\u form/contact.erb
(1.1ms)2014-04-07T23:35:56.668905+00:00应用程序[网站1]:渲染
供应商/bundle/ruby/1.9.1
/gems/mail\u form-1.5.0/lib/mail\u form/views/mail\u form/contact.erb
(1.1ms)2014-04-07T23:35:58.200457+00:00应用程序[网站1]:
2014-04-07T23:35:58.200457+00:00应用程序[网站1]:发送邮件至
myEmail@gmail.com (153
0.1ms)2014-04-07T23:35:58.200457+00:00应用程序[网站1]:2014-04-07T23:35:58.200457+00:00应用程序[网站1]:发送邮件至
myEmail@gmail.com (153
0.1ms)2014-04-07T23:35:58.209656+00:00 heroku[路由器]:at=info-method=POST-path=/conta-to-host=myDomain.com
请求id=b3b2f599-a685-4968-97a1-9dd7a3508083 fwd=“20
1.37.139.250“dyno=web.1连接=2ms服务=1558ms状态=200字节=6107
但是电子邮件永远不会来。
Mandril也不算发送的电子邮件
因为我使用的是通知电子邮件“发件人地址”,所以我改为“否”-reply@myDomain.com并将其添加到mandrill的发送域列表中。但还是什么都没发生
是什么导致了这个错误?发现了:不知何故,我在heroku配置中的Mandrill键与Mandrill网站中给出的不同,它没有显示错误。我配置了正确的钥匙,现在可以用了
# ActionMailer Config
config.action_mailer.default_url_options = { :host => 'myDomain.com' }
config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = false