SMTP连接()失败的PHP邮件程序

时间:2015-04-23 19:46:33

标签: php email smtp phpmailer hotmail

我正在尝试使用PHPMailer从我的hotmail帐户发送电子邮件。它在我的电脑上工作正常,但是当我在另一台电脑上试用时,我收到此错误消息:

  

2015-04-23 17:31:18客户 - >服务器:EHLO localhost
  2015-04-23 17:31:18客户 - >服务器:退出   2015-04-23 17:31:18 SMTP connect()失败。邮件错误

这是我的代码:

<?php
require "C:\wamp\www\PHPMailer-master\PHPMailerAutoload.php";
    $mail = new PHPMailer();
    $mail->SMTPSecure = 'SSL';
    $mail->Username = "b1sakher@hotmail.fr";
    $mail->Password = "rerered";
    $mail->AddAddress("b1sakher@hotmail.fr");
    $mail->FromName = "My Name";
    $mail->Subject = "My Subject";
    $mail->Body = "My Body";
    $mail->Host = "smtp.live.com";
    $mail->Port = 587;
    $mail->IsSMTP();
    $mail->SMTPAuth = true;
    $mail->From = $mail->Username;
  if(!$mail->Send())
    {
     echo "Mailer Error";
    }
    else
     {
    echo "Message has been sent";
    }
?>

1 个答案:

答案 0 :(得分:1)

首先你应该添加调试模式&#39;对于你的代码,这将告诉你哪里出错了。

$mail->SMTPDebug = SMTP::DEBUG_SERVER;
$mail->SMTPDebug = 2; //Alternative to above constant

我遇到了类似问题,但发现Cpanel / WHM中的CFS防火墙阻塞了该端口。

  1. 登录WHM。
  2. 转到ConfigServer Security&amp;插件选项中的防火墙。
  3. 单击防火墙配置。
  4. 按SMTP设置过滤。
  5. 查找SMTP_ALLOWUSER选项并添加以逗号分隔的Cpanel帐户用户名。
  6. 重新启动防火墙。
  7. 如果您无法访问WHM,请咨询您的托管服务提供商。