首页 > 后端开发 > php教程 > 为什么我的 PHP 电子邮件发送到 Gmail 时身份验证失败,如何修复?

为什么我的 PHP 电子邮件发送到 Gmail 时身份验证失败,如何修复?

Mary-Kate Olsen
发布: 2025-01-04 10:51:33
原创
288 人浏览过

Why is my PHP email sending to Gmail failing authentication, and how can I fix it?

修复从 PHP 通过 GMail SMTP 服务器发送电子邮件时的身份验证失败

尝试使用以下方式发送电子邮件时,您可能会遇到以下身份验证错误您的 PHP 脚本:

authentication failure [SMTP: SMTP server does no support authentication (code: 250, response: mx.google.com at your service, [98.117.99.235] SIZE 35651584 8BITMIME STARTTLS ENHANCEDSTATUSCODES PIPELINING)]
登录后复制

当指定的 SMTP 配置不正确或不完整时,通常会发生此错误。要解决此问题,请验证您的配置并将其调整为以下内容:

require_once "Mail.php";

$from = "Sandra Sender <[email&#160;protected]>";
$to = "Ramona Recipient <[email&#160;protected]>";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";

$host = "ssl://smtp.gmail.com";
$port = "465";
$username = "[email&#160;protected]";
$password = "testtest";

$headers = array ('From' => $from,
  'To' => $to,
  'Subject' => $subject);
$smtp = Mail::factory('smtp',
  array ('host' => $host,
    'port' => $port,
    'auth' => true,
    'username' => $username,
    'password' => $password));

$mail = $smtp->send($to, $headers, $body);

if (PEAR::isError($mail)) {
  echo("<p>" . $mail->getMessage() . "</p>");
 } else {
  echo("<p>Message successfully sent!</p>");
 }
登录后复制

通过在主机配置中指定 ssl://,您可以建立与 GMail SMTP 服务器的安全 SSL 连接。此外,您必须指定正确的 SSL 端口,即 465。

确保您的用户名和密码正确。这些应该是您的 GMail 凭据。

调整配置后,您的 PHP 脚本应该能够通过 GMail SMTP 服务器发送电子邮件,而不会遇到身份验证失败错误。

以上是为什么我的 PHP 电子邮件发送到 Gmail 时身份验证失败,如何修复?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板