PHPMailer/SwiftMailer发送电子邮件-无法与主机smtp.gmail.com建立连接

PHPMailer/SwiftMailer发送电子邮件-无法与主机smtp.gmail.com建立连接,smtp,gmail,phpmailer,swiftmailer,Smtp,Gmail,Phpmailer,Swiftmailer,我试图通过PHP邮件发送电子邮件(当它不工作时,我也安装并尝试了Swift邮件,并得到了相同的结果) 我可以使用localhost发送它们,但它总是会变成垃圾邮件,这让我头疼。所以我尝试通过我的gmail帐户通过SMTP发送,希望这将有助于验证电子邮件 这是我的密码: function SendMail( $ToEmail, $MessageHTML, $MessageTEXT ) { require_once ( '../phpmailer/PHPMailerAutoload.php' )

我试图通过PHP邮件发送电子邮件(当它不工作时,我也安装并尝试了Swift邮件,并得到了相同的结果)

我可以使用localhost发送它们,但它总是会变成垃圾邮件,这让我头疼。所以我尝试通过我的gmail帐户通过SMTP发送,希望这将有助于验证电子邮件

这是我的密码:

function SendMail( $ToEmail, $MessageHTML, $MessageTEXT ) {
  require_once ( '../phpmailer/PHPMailerAutoload.php' ); // Add the path as appropriate
  $Mail = new PHPMailer();
  $Mail->IsSMTP(); // Use SMTP
  $Mail->Host        = "smtp.gmail.com"; // Sets SMTP server
  $Mail->SMTPDebug   = 2; // 2 to enable SMTP debug information
  $Mail->SMTPAuth    = TRUE; // enable SMTP authentication
  $Mail->SMTPSecure  = "tls"; //Secure conection
  $Mail->Port        = 587; // set the SMTP port
  $Mail->Username    = 'b31tom@gmail.com'; // SMTP account username
  $Mail->Password    = 'workingpass'; // SMTP account password (IVE TRIED BOTH NORMAL AND APP PASSWORDS)
  $Mail->Priority    = 1; // Highest priority - Email priority (1 = High, 3 = Normal, 5 = low)
  $Mail->CharSet     = 'UTF-8';
  $Mail->Encoding    = '8bit';
  $Mail->Subject     = 'Test Email Using Gmail';
  $Mail->ContentType = 'text/html; charset=utf-8\r\n';
  $Mail->From        = 'b31tom@gmail.com';
  $Mail->FromName    = 'GMail Test';
  $Mail->WordWrap    = 900; // RFC 2822 Compliant for Max 998 characters per line

  $Mail->AddAddress( $ToEmail ); // To:
  $Mail->isHTML( TRUE );
  $Mail->Body    = "Test";
  $Mail->AltBody = "Test";
  $Mail->Send();
  $Mail->SmtpClose();

  if ( $Mail->IsError() ) { // ADDED - This error checking was missing
    return FALSE;
  }
  else {
    return TRUE;
  }
}

$ToEmail = 'b31tom@me.com';
$ToName  = 'Name';

$Send = SendMail( $ToEmail, $MessageHTML, $MessageTEXT );
if ( $Send ) {
  echo "<h2> Sent OK</h2>";
}
else {
  echo "<h2> ERROR</h2>";
}
die;
我已联系我的网络提供商检查以下内容: 启用OpenSSL fopen已启用 端口465和587打开

我已经阅读了PHP Mailer和Swift Mailer的许多示例代码(它们都声称是工作代码!),并且都给出了相同的结果。通常错误101无法连接到gmail服务器

我目前有一个支持票打开与我的网络供应商,有人在那里查看,他们也看不到一个问题


请提供帮助:(

此时此刻,gmail smtp服务器今天早上似乎出现大面积停机。我不知道代码:)但正在搜索其他有问题的服务器。请稍后再试。

谢谢您的帮助。我的web提供商在本地php.ini中启用了pfsockopen函数,并解决了这个问题


我希望这对将来的任何人都有帮助

您是否进入了该帐户的gmail设置并启用了“启用来自不安全应用程序的连接”?否则gmail服务器将不接受您的连接。它们都是工作代码-是您的设置被破坏了。你试过这个吗?我建议您不要设置
ContentType
,尤其是这样,因为它会导致无效的电子邮件结构-
isHTML()
无论如何都能正确地为您设置。
2014-12-16 13:17:14 SMTP ERROR: Failed to connect to server: Network is unreachable (101) 2014-12-16 13:17:14   SMTP connect() failed.
ERROR