我已经像我这样配置了我的本地环境
config.action_mailer.smtp_settings = {
address: "smtp.mandrillapp.com",
port: 587,
domain: ENV["DOMAIN_NAME"],
authentication: "plain",
enable_starttls_auto: true,
user_name: "username",
password: "api key
}
当我从我的应用发送电子邮件时,我收到此错误
Net::SMTPServerBusy in MailsController#import
401 Syntax: HELO hostname
当我将配置从mandrill
更改为gmail
时,我可以从我的应用发送电子邮件。我不知道什么是错的。
感谢您的时间。
答案 0 :(得分:0)
这不仅与Ruby有关。
在此文件上: http://logback.qos.ch/manual/appenders.html
我们可以通过一些文档找到一个参数“hostname”:
如果未正确配置SMTP客户端的主机名, 例如如果客户端主机名不是完全限定的,则为某些SMTP 服务器可能会拒绝客户端发送的HELO / EHLO命令。至 克服此问题,您可以设置localhost属性的值 到客户端主机的完全限定名称。另见 文档中的“mail.smtp.localhost”属性 com.sun.mail.smtp包。
所以根据packjage文档,如果你在Java世界,你可以使用这个选项-Dmail.smtp.localhost=someHostName
SMTP HELO或EHLO命令中使用的本地主机名。默认为 InetAddress.getLocalHost()。的gethostname()。通常不需要 如果您的JDK和您的名称服务配置正确,请设置。
所以我猜你的操作系统中可能有一些错误配置,你的Ruby客户端无法获得正确的Fully Qualified Domain Name。
一位队友在其MacOS笔记本电脑上遇到此问题。她使用了Java选项,所以我不能告诉你更多:)