0

我已设置 Sidekiq 以在注册时发送电子邮件。

该过程在开发模式下运行良好,但是在生产中,当我使用 sidekiq(发送到 redis)时,我的 smtp 设置(或其他东西)似乎不起作用。

使用 sidekiq 通过 Mailgun 发送邮件是否有问题?

这是我的创建用户操作:

def create 
    @user = User.new(params[:user])
    @user.roles << Role.find_by_role("member")
    @user.subdomain = @user.subdomain.downcase
    @user.generate_token(:confirm_email_token)
    @user.confirm_email_sent_at = Time.zone.now
    if @user.save
        UserMailer.delay.new_user(@user.id)

        redirect_to root_url, notice: "Thank you for registering."
    else
        render "new"
    end
end

这是我的邮件:

def new_user(user_id)
  @user = User.find(user_id)
  mail :to => @user.email, :subject => "Welcome to Theatrical.co"
end

在开发中,这工作正常。但是在生产中,这不起作用。我收到此错误消息:

Net::SMTPFatalError: 550 5.7.1 Relaying denied

这似乎与Mailgun不接受redis或sidekiq发送邮件有关。

我需要一些秘密设置吗?

4

1 回答 1

0

您必须获得授权才能使用邮件服务器进行中继。未经授权的用户将收到“Relaying Denied”错误。确认用户有足够的权限发送邮件

于 2014-06-09T12:20:12.427 回答