web-dev-qa-db-ja.com

Rails 5.2 Net :: SMTPAuthenticationError-535 Authentication failed:account disabled when email Sending(Localhost and Heroku)

Rails 5.2メーラーを機能させようとしていますが、Net::SMTPAuthenticationError - 535 Authentication failed: account disabledlocalhostとHeroku production環境の両方でエラーが発生しました。

メーラーは次のようになります。

class AdminNotificationsMailer < ApplicationMailer
  default from: "[email protected]"

  def new_rfp(rfp)
    @rfp = rfp
    mail(
      :to => "[email protected]",
      :subject => 'New RFP Alert!'
    )
  end

  def new_contact_us(contact)
    @contact = contact
    mail(
      to: "[email protected]",
      subject: 'New Contact Us Submission on LPI'
    )
  end

end

私のトリガーでrfp#create action(最初のメーラーの場合、new_rfp 1):

def create
    @rfp = Rfp.new(rfp_params)

    respond_to do |format|
      if @rfp.save!
        AdminNotificationsMailer.new_rfp(@rfp).deliver
        format.html { redirect_to root_path, notice: "Thanks for your request!  We'll get back to you ASAP.  Stay tuned!" }
        format.json { render :show, status: :created, location: @rfp }
      else
        format.html { render :new }
        format.json { render json: @rfp.errors, status: :unprocessable_entity }
      end
    end
  end

Sendgridをプロビジョニングし、putsを使用してユーザー名とパスワードを再確認しました(localhostと本番環境では正しい)。

私はenvironment.rb

ActionMailer::Base.smtp_settings = {
  :user_name => ENV["SENDGRID_USERNAME"],
  :password => ENV["SENDGRID_PASSWORD"],
  :domain => 'linchpinindustries.com',
  :address => 'smtp.sendgrid.net',
  :port => 587,
  :authentication => :plain,
  :enable_starttls_auto => true
}

thisthis のような投稿を調べましたが、何も機能していません。

私は公式に困惑しています。このエラーが発生している理由を誰かが見ることができますか?

4
Liz

この構成をテストできますか?それは私のプロジェクトに取り組んでいます。

ActionMailer::Base.smtp_settings = {
    :address => "smtp.sendgrid.net",
    :port => 465,
    :domain => "vibol.xyz",
    :ssl => true,
    :enable_starttls_auto => true,
    :authentication => :login,
    :user_name => ENV['SENDGRID_USERNAME'],
    :password => ENV['SENDGRID_PASSWORD']
  }
0
Coco