当前位置: 首页 > 知识库问答 >
问题:

使用谷歌邮件服务器使用PHPMailer发送邮件失败

孟凯泽
2023-03-14

我正在使用谷歌的邮件服务器发送电子邮件。对于电子邮件发送,我使用PHPMailer。这是我在示例中使用的代码片段。com/contactus站点:

        $mail             = new PHPMailer();
        $mail->IsSMTP();
        $mail->SMTPDebug  = 2;
        $mail->SMTPAuth   = true;                  // enable SMTP authentication
        $mail-> Host      = 'ssl://smtp.gmail.com';
        $mail->Port       = 465;                   // set the SMTP port for the GMAIL server

        $mail->Username   = "myprivateaddress@gmail.com";  // GMAIL username
        $mail->Password   = "myprivatepassword";            // GMAIL password
        $mail->SetFrom($form_email, $form_username);
        $mail->AddAddress("support@example.com", "Example Support");
        $mail->AddReplyTo($form_email, $form_username);

        $mail->Subject    = $subject2;
        $mail->Body       = $message2;           

        $mail->CharSet     = 'UTF-8';
        $mail->Encoding    = '8bit';
        $mail->ContentType = 'text/html; charset=utf-8\r\n';
        $mail->WordWrap = 70;

        if(!$mail->Send()) {
          echo "Mailer Error: " . $mail->ErrorInfo;
        } else {
          echo "Message sent!";
        }

代码向我发送了一封电子邮件(support@example.com)其标题为:

from:    user1 <myprivateaddress@gmail.com>
reply-to:    user1 <user1@gmail.com> (this is $form_email)
to:  Example Support <support@example.com>

问题是,当我使用不同的地址作为用户名和密码进行身份验证时,消息不会被发送。错误是:

2013-11-02 14:46:18 SERVER -> CLIENT: 220 mx.google.com ESMTP u46sm21298429eep.17 - gsmtp 2013-11-02 14:46:18   CLIENT -> SERVER: EHLO www.example.com 2013-11-02 14:46:18  SERVER -> CLIENT: 250-mx.google.com at your service, [2a01:4f8:140:71ed::2] 250-SIZE 35882577 250-8BITMIME 250-AUTH LOGIN PLAIN XOAUTH XOAUTH2 PLAIN-CLIENTTOKEN 250-ENHANCEDSTATUSCODES 250 CHUNKING 2013-11-02 14:46:18   CLIENT -> SERVER: AUTH LOGIN 2013-11-02 14:46:18    SERVER -> CLIENT: 334 VXNlcm5hbWU6 2013-11-02 14:46:18  CLIENT -> SERVER: ZGFwcHdhbGxAZ21haWwuY29t 2013-11-02 14:46:18  SERVER -> CLIENT: 334 UGFzc3dvcmQ6 2013-11-02 14:46:18  CLIENT -> SERVER: U3BvdGxpZ2h0OA== 2013-11-02 14:46:18  SERVER -> CLIENT: 534-5.7.14 Please log in via your web browser and then try again. 534-5.7.14 Learn more at https://support.google.com/mail/bin/answer.py?answer=787 534 5.7.14 54 u46sm21298429eep.17 - gsmtp 2013-11-02 14:46:18 SMTP ERROR: Password command failed: 534-5.7.14 Please log in via your web browser and then try again. 534-5.7.14 Learn more at https://support.google.com/mail/bin/answer.py?answer=787 534 5.7.14 54 u46sm21298429eep.17 - gsmtp 2013-11-02 14:46:18  CLIENT -> SERVER: QUIT 2013-11-02 14:46:18  SERVER -> CLIENT: 221 2.0.0 closing connection u46sm21298429eep.17 - gsmtp SMTP connect() failed. Mailer Error: SMTP connect() failed.

我不知道为什么它与我每天使用的私人gmail帐户一起工作,为什么它不与我拥有的其他gmail帐户一起工作。它应该是gmail中的一个设置,也许是,但是哪一个呢?

共有1个答案

封梓
2023-03-14

嗯,我不知道为什么它不起作用。最后,我改为SendGrid。他们提供了一个简单的API,我用我的基本技能在一小时内设置了电子邮件发送。

 类似资料:
  • 本文向大家介绍PHPMailer发送邮件,包括了PHPMailer发送邮件的使用技巧和注意事项,需要的朋友参考一下 PHPMailer是一个封装好的PHP邮件发送类,支持发送HTML内容的电子邮件,以及图片附件,前提要设置好邮件服务器就能实现邮件发送功能。 HTML 首先我们先放置一个收件箱的输入框和一个发送邮件按钮: 收件人: 以上所述是小编给大家介绍的PHPMailer发送邮件,希望对大家有所

  • 当我在本地机器上运行脚本时 客户- 但是当我在主机上运行相同的脚本时 SMTP- 你有办法解决这个问题吗? 提前感谢。

  • 我试图发送电子邮件使用gmail smtp使用javax.mail.下面是我的代码 代码工作正常当我在本地服务器上运行它时,但当我尝试在Elastic beanstek上运行它时(我的服务器在AWS EBS上运行),身份验证失败异常即将到来注意:我已打开从Google A/c设置访问不太安全的应用程序,但我仍然收到此错误 javax.mail.身份验证失败异常:534-5.7.14请通过您的网络浏

  • 本文向大家介绍C#使用windows服务发送邮件,包括了C#使用windows服务发送邮件的使用技巧和注意事项,需要的朋友参考一下 最近做了一个使用 C# 写了一个发送邮件的windows 服务,在这里记录一下。 首先使用 Visual Studio 2015 创建一个 windows 服务项目。 然后在设计器上面右击添加安装程序。如下图。 安装好后,选择安装程序设计界面,选择服务和安装程序右击选

  • 本文向大家介绍php使用phpmailer发送邮件实例解析,包括了php使用phpmailer发送邮件实例解析的使用技巧和注意事项,需要的朋友参考一下 本人新手,由于要做邮件发送验证码,所以找到和搜集到这些,本人亲测完全可以用 这是163邮箱的   因为不是企业邮箱填写的账号是163的账号,但是密码是授权码 授权码的获取方式为: 然后   然后在这个页面向下看可以看到  接下来就是执行代码了  q

  • 本文向大家介绍phpmailer发送邮件功能,包括了phpmailer发送邮件功能的使用技巧和注意事项,需要的朋友参考一下 PHP内置的mail函数使用起来不够方便,另外受其他语言的影响,博主更偏好面向对象的包管理模式,因此phpmailer成为了我用PHP发送邮件的首选,这里分享给大家。 库导入 这里使用composer进行包管理,以下是json文件: 使用样例 测试结果 博主使用163作为发送