【问题标题】:phpmailer smtp issuephpmailer smtp 问题
【发布时间】:2012-09-05 21:02:55
【问题描述】:

由于垃圾邮件,我的主机最近对我的服务器进行了有关电子邮件的更改。

我发现有大量垃圾邮件从您的 服务器:

root@server2 [~]# exiqgrep -r *****.com -c 5814 匹配 6122 条消息

这意味着 *****.com 是 5,814 的收件人 从您的服务器发送的消息。我已删除这些消息 从队列中提取并提高邮件日志记录的级别和安全性 你的服务器。我还禁止您的服务器开放 中继,这似乎是邮件的发送方式。有一个 这很有可能导致延迟,但问题仍然存在 您有一个试图发送邮件的被劫持脚本/帐户 这个比率。服务器现在设置为不发送来自其他任何用户的邮件 而不是 SMTP 用户、root 和 mailman;因此,您必须确保 任何邮件脚本都正确使用 SMTP 身份验证。你可以 在此处找到有关如何执行此操作的更多信息:

http://email.about.com/od/emailprogrammingtips/qt/PHP_Email_SMTP_Authentication.htm

我还强烈建议开启 DKIM 和 SPF 记录(其中 可以在“邮件身份验证”下的 cPanel 中完成) 此服务器上的域,因为它会减少 退回/拒绝邮件以及被列入垃圾邮件黑名单 那已经出去了。我也在运行恶意软件扫描 ***** 帐户,并已关闭默认电子邮件地址。我 扫描完成后会立即通知您是否存在 是任何命中。

我的脚本现在必须使用 SMTP 身份验证。现在我在更新我的代码后遇到了错误。

警告:fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo 失败:名称或服务未知 /home/*/public_html/fkg/lib/phpmailer/class.SMTP.php 第 89 行

警告:fsockopen() [function.fsockopen]:无法连接到 mail..*****.com:25 (php_network_getaddresses: getaddrinfo 失败:名称或服务未知)在 /home/*/public_html/fkg/lib/phpmailer/class.SMTP.php 在第 89 行 SMTP -> 错误:无法连接到服务器:php_network_getaddresses: getaddrinfo 失败:名称或服务未知 (0) 邮件程序错误

描述:SMTP 错误:无法连接到 SMTP 主机服务器

这是我的代码

$mail = new phpmailer();
$mail->SMTPDebug = 1;
$mail->IsSMTP();  // telling the class to use SMTP
$mail->Host = "mail.***.************.com"; // SMTP server
$mail->Port = "25"; 
$mail->SMTPAuth  = true;   //we need to autenticate to the server
//$mail->SMTPSecure = "ssl";  //we use ssl to protected the flow of info
$mail->Username = "noreply+*****.com"; //account 
$mail->Password = "********"; //password

关于正在发生的事情的任何想法。提前致谢。

【问题讨论】:

  • 您使用哪个库作为 SMTP 处理程序?即$mail是什么?
  • “切换到 SMTP”究竟是从什么开始的?不使用 SMTP 就无法发送邮件。
  • 对不起大家。更新了问题。希望它更清楚。不同的错误。
  • 您是否尝试过在端口 587 而不是 25 上发送?通常在需要身份验证时使用 587 - 某些服务器和 ISP 将阻止通过端口 25 发出的电子邮件

标签: php email smtp phpmailer


【解决方案1】:

好吧,最后,经过长时间的聊天......

几个问题。在这种情况下,另一端的服务器是exim,它只允许您在使用EHLO 命令点击它后进行身份验证。使用的PHPMailer 不允许您强制使用EHLO,因此针对exim 服务器的身份验证不起作用。

切换到PEAR::Mail + PEAR::Net_SMTP + PEAR::Net_Socket“修复”了这个问题。

参考资料:

  1. http://pear.php.net/package/Mail/download/
  2. http://pear.php.net/package/Net_SMTP/download
  3. http://pear.php.net/package/Net_Socket/download

【讨论】:

  • 感谢 favouretti,我现在要求我的主人这样做。如果解决了,我会告诉你的。
  • 他们进行了更改,现在出现了新的错误。更新问题。
  • 再次感谢 favouretti,愚蠢的错误。现在错误与原始错误相似,但略有不同。更新了问题。
  • 我们回到第一点,您的主机无法解析您的 SMTP 服务器地址。尝试自己解决它并为 $mail->Host 指定 IP 地址而不是主机名,看看这是否能缓解您的问题。
  • 好的,这样做并得到了一些不同的新错误。很抱歉所有的更新。我对电子邮件一无所知。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-03-11
  • 2014-06-23
  • 2019-09-18
  • 1970-01-01
  • 2012-12-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多