0

サインアップ時にメールを送信するように Sidekiq を設定しました。

プロセスは開発モードでは正常に機能しますが、本番環境では、sidekiq (sendt to redis) を使用すると、smtp 設定 (または他の何か) が機能していないように見えます。

Mailgun 経由でメールを送信するために sidekiq を使用する際の落とし穴はありますか?

これは私のユーザー作成アクションです:

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

中継用にメール サーバーを使用する権限が必要です。権限のないユーザーは、「中継が拒否されました」というエラーを受け取ります。ユーザーがメールを送信するための十分な権限を持っていることを確認します

于 2014-06-09T12:20:12.427 に答える