我有一个运行ZEO服务器和2个Zope服务器的网页,其中一个服务器位于与ZEO服务器不同的机器上。两台机器都安装了sendmail(我可以从shell发送邮件)。
现在,在Zope MailHost对象中,SMTP主机设置为localhost。发送邮件仅在与ZEO服务器在同一服务器上访问网站时才有效,否则会出错:
SMTPRecipientsRefused'{'my@email.com':'554, 5.7.1 'my@email.com': Relay access denied')}
有没有办法在Zope和ZEO中使用localhost作为SMTP的MailHost对象?我猜想Zope MailHost使用来自与Zope实例相同的服务器的sendmail,但我的猜测显然是错误的。
我的解决方法是将MailHost对象与外部SMTP服务器一起使用。