我想在OSX10.9上用这个小php脚本发送邮件。
mail($_POST['to'], $_POST['subject'], $_POST['message'], "From: " . $_POST['from']);该方法返回true,但邮件永远不会到达我的收件箱:(我锁定了来自postfix的错误消息,他们告诉我它因为垃圾邮件而被阻止。
Mar 6 11:30:38 xxxs-MacBook-Pro.local postfix/pickup[69960]: BB98E14DD64A: uid=70 from=<_www>
Mar 6 11:30:38 xxxs-MacBook-Pro.local postfix/cleanup[70313]: BB98E14DD64A: message-id=<20140306103038.BB98E14DD64A@xxxs- MacBook-Pro.local>
Mar 6 11:30:38 xxxs-MacBook-Pro.local postfix/qmgr[69961]: BB98E14DD64A: from=<_www@xxxs-MacBook-Pro.local>, size=384, nrcpt=1 (queue active)
Mar 6 11:30:39 xxxs-MacBook-Pro.local postfix/smtp[70315]: BB98E14DD64A: to=<xxx@xxx.com>, relay=mx3.me.com.akadns.net[17.172. 34.65]:25, delay=0.67, delays=0/0/0.53/0.14, dsn=5.7.1, status=bounced (host mx3.me.com.akadns.net[17.172.34.65] said: 550 5.7.1 Mail from IP 95.91.221.96 was rejected due to listing in Spamhaus PBL. For details please see http://www.spamhaus.org/query/bl?ip=95. 91.221.96 : xxx@xxx.com (in reply to RCPT TO command))
Mar 6 11:30:39 xxxs-MacBook-Pro.local postfix/cleanup[70313]: 8C52414DD64D: message-id=<20140306103039.8C52414DD64D@xxxs- MacBook-Pro.local>
Mar 6 11:30:39 xxxs-MacBook-Pro.local postfix/bounce[70316]: BB98E14DD64A: sender non-delivery notification: 8C52414DD64D
Mar 6 11:30:39 xxxs-MacBook-Pro.local postfix/qmgr[69961]: 8C52414DD64D: from=<>, size=2669, nrcpt=1 (queue active)
Mar 6 11:30:39 xxxs-MacBook-Pro.local postfix/qmgr[69961]: BB98E14DD64A: removed
Mar 6 11:30:39 xxxs-MacBook-Pro.local postfix/local[70317]: 8C52414DD64D: to=<_www@xxxs-MacBook-Pro.local>, relay=local, delay=0, delays=0/0/0/0, dsn=2.0.0, status=sent (delivered to mailbox)
Mar 6 11:30:39 xxxs-MacBook-Pro.local postfix/qmgr[69961]: 8C52414DD64D: removed我如何才能规避这个问题呢?
干杯丹尼尔
发布于 2014-03-06 19:11:33
该IP在spamhaus中列出:
Mail from IP 95.91.221.96 was rejected due to listing in Spamhaus PBL.Spamhaus PBL是终端用户IP地址范围的DNSBL数据库,它不应向任何互联网邮件服务器发送未经身份验证的电子邮件,但由ISP专门提供供该客户使用的邮件服务器除外。PBL可帮助网络对动态和非MTA客户IP范围实施其可接受的使用策略。
这仅仅意味着您正在使用来自ISP的IP来传递电子邮件。ISP积极禁止这样做,以防止他们的客户发送垃圾邮件。最简单的解决方案是使用您的ISP提供的SMTP服务器。您可以在php.ini中将其配置为默认服务器,而不是本地主机:
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = mail.yourISP.com
; http://php.net/smtp-port
smtp_port = 25有许多理由不使用PHP中的本地mail()函数来发送邮件。最著名的替代方案是PHPMailer。这段代码有自己的内置SMTP客户端,用于以最适当的方式发送邮件。您可以轻松地将其集成到您的软件中,以进一步防止您的邮件被标记为垃圾邮件。
https://stackoverflow.com/questions/22221902
复制相似问题