我是被 stackoverflow 的人推荐到这里来的
好的,所以我知道我使用的是正确的代码,因为我已经在另一台服务器上运行它了,但是当我尝试使用 php 从该特定服务器上的网页发送电子邮件时,我收到了成功消息,但电子邮件却无法发送。
在 /var/log/maillog 中我看到
9 月 11 日 14:20:28 ela1 postfix/smtp[11496]: CEE83E151FD: to=[此处为我的电子邮件地址],relay=none,delay=40,delays=0.08/0.01/40/0,dsn=4.4.3,status=deferred(未找到主机或域名。name=btopenworld.co.uk 的名称服务错误类型=MX:未找到主机,请重试)
有人可以帮忙吗?
答案1
btopenworld.co.uk
没有MX 记录,如日志所述。联系收件人并要求他们提供正确的电子邮件地址或修复其域的 DNS 记录。
答案2
从我使用 nslookup 看到的情况来看:
> btopenworld.co.uk
Server: 87.248.160.5
Address: 87.248.160.5#53
Non-authoritative answer:
Name: btopenworld.co.uk
Address: 213.121.143.193
> set type=MX
> btopenworld.co.uk
Server: 87.248.160.5
Address: 87.248.160.5#53
Non-authoritative answer:
*** Can't find btopenworld.co.uk: No answer
Authoritative answers can be found from:
btopenworld.co.uk
origin = ns0.bt.net
mail addr = hostmaster.bt.net
serial = 2002020923
refresh = 28800
retry = 7200
expire = 604800
minimum = 86400
>
此域没有任何 MX 记录,因此您的 MTA 不知道将电子邮件发送到哪里。因此,问题出在 btopenworld.co.uk 域部分,为了解决这个问题,需要联系 btopenworld.co.uk 的所有者,以便他为 btopenworld.co.uk 区域添加 MX 记录。
答案3
我不相信btopenworld。英国曾经是一个有效的电子邮件目的地,只有 btopenworld。com和互联网之家
您可以尝试重新发送邮件至[电子邮件保护]作为测试,看看是否通过,尽管根据您的示例,您使用自己的电子邮件地址进行测试,所以我以为您早就注意到了这个问题:-/
答案4
显示 /etc/resolv.conf 的输出。此文件显示其中的 DNS 服务器。如果其中没有 DNS 服务器,那么您必须添加一个。问题也可能出在 DNS 中的 MX 电子记录上。MX 告诉 MDA(邮件传递代理)将电子邮件路由到何处。因此您还必须检查您的 DNS 配置。