簡體   English   中英

使用Mandrill在生產中發送設計電子郵件

[英]Send Devise E-mails using Mandrill in Production

我正在嘗試從Rails 4應用程序發送Devise電子郵件。 我不想更改模板或任何東西,我只想使用Mandrill在生產環境中傳遞消息。

我的production.rb是這樣的:

  config.action_mailer.raise_delivery_errors = true
  config.action_mailer.perform_deliveries = true
  config.action_mailer.default_url_options = {:host => 'sociedadeavalia.com.br'}
  config.action_mailer.delivery_method = :smtp
  config.action_mailer.smtp_settings = {
    :address => "smtp.mandrilapp.com",
    :port    => 587,
    :user_name => ENV['MANDRILL_USERNAME'],
    :password => ENV['MANDRILL_APIKEY'],
    :authentication => 'login',
    :enable_starttls_auto => true,
    :domain  => 'sociedadeavalia.com.br'
  }

我的devise.rb有這個

config.mailer_sender = 'no-reply@sociedadeavalia.com.br'
config.mailer = 'MyDeviseMailer'

我創建了以下郵件:

class MyDeviseMailer < Devise::Mailer
  helper :application
  include Devise::Controllers::UrlHelpers
  default template_path: 'devise/mailer'  
end

現在,每當我嘗試在生產環境中發送電子郵件(用於創建新用戶帳戶的確認電子郵件)時,我的應用程序就會崩潰,並且它會出現在日志中:

31 <190>1 2014-12-03T22:17:07.987969+00:00 app web.1 - - Net::OpenTimeout (execution expired):

在這種情況下我該怎么辦?

您似乎遇到了端口被阻塞的問題。 我們建議您在此處進行故障排除步驟。 更具體地說,請嘗試更改您正在使用的端口-2525通常不會被阻止,或者在啟用SSL的情況下使用465。 許多主機阻止25和587來阻止垃圾郵件。

嘗試將身份驗證更改為“普通”。 那就是對我有用的。

:authentication => 'plain',

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM