在我的Rails应用程序中,我使用AWS-SDK通过SMTP通过SES发送电子邮件。以下是SMTP设置的外观:
ActionMailer::Base.smtp_settings = {
:address => "email-smtp.us-east-1.amazonaws.com",
:domain => "my-domain.com",
:port => 587,
:user_name => XXXXXXXXXXXXXX,
:password => XXXXXXXXXXXXXX,
:authentication => "plain",
:enable_starttls_auto => true
}
事情很好,直到我必须用拉丁文/希腊字符(例如utşav@my-domain.com
)发送电子邮件到地址。在这种情况下,我收到以下错误:Net::SMTPSyntaxError: 501 Invalid RCPT TO address provided
。
我试着看Special Characters in Amazon SES,但它没有用。
感谢任何帮助。
答案 0 :(得分:1)
U + 007F以上的国际字符编码为UTF-8,RFC 6531允许,但邮件系统可能会限制在分配本地部分时使用哪些字符。
也就是说,Net::SMTPSyntaxError: 501 Invalid RCPT TO address provided
可能是由您的SMTP提供商返回的,他只是拒绝这些地址,对时尚的RFC不那么宽容。
亚马逊上是否有任何设置可以开启?