我在不同的服务器上有两个ruby on rails应用程序。两者都运行正常,但一个(服务器2)无法发送任何邮件 我总是得到 554 5.7.1:拒绝接力错误。
在服务器2上,我在telnet的帮助下测试了邮件通信,但它可以工作,但它不适用于ruby on rails应用程序。
其他应用程序也可以发送邮件。
两个系统之间的唯一区别是os(Debian 6(服务器1)和RHEL 6(服务器2))和ip范围(10个网络(服务器2)和53个网络(服务器1))。
我认为最好的方法是使用一个简单的邮件应用程序,但我不知道,如何写这样的东西。
感谢您的帮助。
答案 0 :(得分:2)
第二台服务器的IP地址不在该电子邮件服务器的白名单中,但第一台服务器的IP地址是。
除非您使用经过身份验证的SMTP,否则您必须将所有应用程序服务器的IP地址添加到白名单配置中。
使用telnet只会告诉您端口是否接受连接,而不是实际发送电子邮件。为此,您必须执行实际的SMTP事务。
有Postmark,SendGrid甚至是我的初创PostageApp等服务,它们将充当您的邮件服务器。