长话短说:
这是我的作品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它似乎是合法的。
我还看了很多其他页面但没有成功。这是我第一次做的事情所以,错误可能是微不足道的。但错误输出给了我很少的信息来处理我自己。
答案 0 :(得分:0)
尝试config.mailer_sender = "Kazik <kask@wp.pl>"
http://guides.rubyonrails.org/action_mailer_basics.html#sending-email-with-name
答案 1 :(得分:0)
我还不能评论,但我相信587需要引用。所以它应该是:
port: "587",
答案 2 :(得分:0)
对不起,我把这个作为答案,但我还不能发表评论。
我在使用Mailgun的Rails 2.3中遇到了同样的问题。删除域设置并确保所有设置都是字符串(包括端口,这是我的整数)解决了它。