设计结束SMTPSyntaxError无效参数的确认邮件(501 5.5.4)

时间:2016-01-06 19:03:12

标签: ruby-on-rails devise mailgun

长话短说:

这是我的作品smtp_settings:

  config.action_mailer.default_url_options = { host: 'myapp.herokuapp.com' }
  config.action_mailer.delivery_method = :smtp
  # SMTP settings for mailgun
  ActionMailer::Base.smtp_settings = {
    port:           587,
    address:        'smtp.mailgun.org',
    domain:         ENV['ms_domain'], #Domain name
    user_name:      ENV['ms_username'], #Default SMTP Login
    password:       ENV['ms_pass'], #Default Password
    authentication: :plain
  }

这是我在devise.rb中的设计config.mail_sender:

  config.mailer_sender = '"Kazik" <kask@wp.pl>'

错误是:

Net::SMTPSyntaxError (501 5.5.4 Invalid argument

我用Google搜索了一段时间,找到了一些答案,但没有人给我开绿灯。

我尝试从smtp_settings中移除domain,但我最终得到了不同的错误&gt;&gt; Net::SMTPFatalError (550 5.7.1 Relaying denied,在我用Google搜索之后。我认为这是一个身份验证错误,所以我离开了域名。

我还认为我的mail_sender错了,但根据这个question它似乎是合法的。

我还看了很多其他页面但没有成功。这是我第一次做的事情所以,错误可能是微不足道的。但错误输出给了我很少的信息来处理我自己。

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

我还不能评论,但我相信587需要引用。所以它应该是:

port: "587",

答案 2 :(得分:0)

对不起,我把这个作为答案,但我还不能发表评论。

我在使用Mailgun的Rails 2.3中遇到了同样的问题。删除域设置并确保所有设置都是字符串(包括端口,这是我的整数)解决了它。