我用谷歌搜索了很多关于这个问题的信息,我在很多地方都发现了这个错误,但我的问题没有答案。
我有一个新安装的 (debian) 系统,它基本上只包含一个 django (1.3.0) 安装,以及一个非常糟糕的后缀。如果我这样做,后缀正在工作
echo sth | mail somebody@provider.com
它完美地到达了。
我尝试使用 django send_mail 之类的
from django.core.mail import send_mail
send_mail('aaa', 'bbb', 'from@localhost', ['user@external.hu'])
但我总是回来一个错误:
Traceback (most recent call last):
File "", line 1, in
File "/usr/lib/python2.6/dist-packages/django/core/mail/__init__.py", line 61, in send_mail
connection=connection).send()
File "/usr/lib/python2.6/dist-packages/django/core/mail/message.py", line 248, in send
return self.get_connection(fail_silently).send_messages([self])
File "/usr/lib/python2.6/dist-packages/django/core/mail/backends/smtp.py", line 92, in send_messages
sent = self._send(message)
File "/usr/lib/python2.6/dist-packages/django/core/mail/backends/smtp.py", line 110, in _send
email_message.message().as_string())
File "/usr/lib/python2.6/smtplib.py", line 709, in sendmail
raise SMTPRecipientsRefused(senderrs)
SMTPRecipientsRefused: {'user@external.hu': (554, '5.7.1 : Relay access denied')}
当然,我尝试使用不同的地址。他发送电子邮件的唯一一种情况是,当我将它发送到localhost
(或在这台机器上有 mx 的主机)时。
在mail.log
我可以看到这个:
Apr 16 10:48:48 tkt postfix/smtpd[4886]: connect from tkt[217.112.142.235]
Apr 16 10:48:48 tkt postfix/smtpd[4886]: NOQUEUE: reject: RCPT from tkt[217.112.142.235]: 554 5.7.1 : Relay access denied; from= to= proto=ESMTP helo=
Apr 16 10:48:48 tkt postfix/smtpd[4882]: lost connection after RSET from tkt[217.112.142.235]
Apr 16 10:48:48 tkt postfix/smtpd[4882]: disconnect from tkt[217.112.142.235]
嗅探 25 端口我什么也看不见。
任何人都知道如何解决这个问题(最好使用本地后缀)?
这台机器在 Internet 站点上,正如我所写,从命令行发送邮件可以正常工作。