2016-09-26 11 views
0

の中に指定されたアドレスは確認メールを送信メーラーするためのコードではなく、 SendVerificationMailerメールアドレスからは、アドレスでログインし、属性「から」以下

class SendVerificationMailer < ApplicationMailer 
    def send_verification(verification_id) 
    @verification = Verification.find(verification_id) 
    @email = @verification.email 
    @token = @verification.token 
    mail :from => "Support <[email protected]>", :to => @email, :subject => "User verification code" 
    end 
end 

production.rb次のように私はaction_mailerを設定している:

# Mailing preferences 
    config.action_mailer.default_url_options = { :host => ENV["HOST_NAME"] } 
    config.action_mailer.delivery_method = :smtp 
    config.action_mailer.smtp_settings = { 
     :enable_starttls_auto => true, 
     :address => ENV["SMTP_ADDRESS"], 
     :port => ENV["SMTP_PORT"], 
     :domain => ENV["SMTP_DOMAIN"], 
     :authentication => :login, 
     :user_name => ENV["EMAIL"], 
     :password => ENV["PASSWORD"] 
    } 

私は、SMTP user_namepasswordのアカウント[email protected]を使用。ローカルマシンから電子メールを送信すると、正常に動作しており、受信メール内の送信元アドレスは、とモードの両方でになります。

AWSのプロダクションマシンからメールが送信されたときは、[email protected]と表示され、[email protected]と表示されません。


私は労働者がSQSキューから属性を取得して電子メールを送信web serverworkerを、持っている展開にAWS Elastic Beanstalkでを使用しています。

誰でもこの問題を解決するのに手伝ってください。 ありがとうございます..

+0

SMTPプロバイダは、スパマーのホスティングを避けるために特定の送信元アドレスのみを許可することはできますか? – max

+0

@max私はGMAILを使用します。 –

+1

あなたの問題があります。 GMAILでは、アカウントアドレスから別の「差出人」アドレスを使用することはできません。スパム対策機能です。別のプロバイダを検討することができます。私はwww.speednames.comを使い、それに満足しています。 – SteveTurczyn

答えて

1

GMAIL(使用している)などの電子メールプロバイダの中には、from電子メールアドレスの上書きを許可しないものがあります。 は、がGMAILアカウント所有者のメールアドレスである必要があります。

fromのメールアドレスを変更する必要がある場合は、他のプロバイダを確認する必要があります。

MailGun www.mailgun.comは、非常に開発者に優しい電子メールサービスです(ドキュメントにサンプルRubyコードが含まれています)。無料で月額10,000件の電子メールを送信できます。

関連する問題