首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHPMailer似乎不适用于主机托管

PHPMailer似乎不适用于主机托管
EN

Stack Overflow用户
提问于 2020-01-13 13:53:21
回答 1查看 2.3K关注 0票数 0

我在核心PHP上使用PHPMailer和主机托管业务帐户,我在SMTPDebug中得到了以下错误:

代码语言:javascript
复制
2020-01-13 13:16:54 SERVER -> CLIENT: 220-gator4001.hostgator.com ESMTP Exim 4.92 #2 Mon, 13 Jan 2020 07:16:54 -0600 220-We do not authorize the use of this system to transport unsolicited, 220 and/or bulk e-mail.
2020-01-13 13:16:54 CLIENT -> SERVER: EHLO www.domainname.com
2020-01-13 13:16:54 SERVER -> CLIENT: 250-gator4001.hostgator.com Hello www.domainname.com [192.185.16.229]250-SIZE 52428800250-8BITMIME250-PIPELINING250-AUTH PLAIN LOGIN250 HELP
2020-01-13 13:16:54 CLIENT -> SERVER: AUTH LOGIN
2020-01-13 13:16:54 SERVER -> CLIENT: 334 VXNlcm5hbWU6
2020-01-13 13:16:54 CLIENT -> SERVER: ZG9ub3RyZXBseUBjaGFpbnRoZWFwcC5jb20=
2020-01-13 13:16:54 SERVER -> CLIENT: 334 UGFzc3dvcmQ6
2020-01-13 13:16:54 CLIENT -> SERVER: YThoZkhON3FpKG9A
2020-01-13 13:16:54 SERVER -> CLIENT: 235 Authentication succeeded
2020-01-13 13:16:54 CLIENT -> SERVER: MAIL FROM:<donotreply@domainname.com>
2020-01-13 13:16:54 SERVER -> CLIENT: 250 OK
2020-01-13 13:16:54 CLIENT -> SERVER: RCPT TO:<my@emailaddress.com>
2020-01-13 13:16:54 SERVER -> CLIENT: 250 Accepted
2020-01-13 13:16:54 CLIENT -> SERVER: DATA
2020-01-13 13:16:54 SERVER -> CLIENT: 354 Enter message, ending with "." on a line by itself
2020-01-13 13:16:54 CLIENT -> SERVER: Date: Mon, 13 Jan 2020 16:16:54 +0300
2020-01-13 13:16:54 CLIENT -> SERVER: To: Taha Khan <my@emailaddress.com>
2020-01-13 13:16:54 CLIENT -> SERVER: From: Chain <donotreply@domainname.com>
2020-01-13 13:16:54 CLIENT -> SERVER: Subject: Chain account please activate your account
2020-01-13 13:16:54 CLIENT -> SERVER: Message-ID: <KvZPwFu2gMzFcs5f9XiBML51sazZsNQRXMqmxiuo@www.domainname.com>
2020-01-13 13:16:54 CLIENT -> SERVER: X-Mailer: PHPMailer 6.0.1 (https://github.com/PHPMailer/PHPMailer)
2020-01-13 13:16:54 CLIENT -> SERVER: MIME-Version: 1.0
2020-01-13 13:16:54 CLIENT -> SERVER: Content-Type: multipart/alternative;
2020-01-13 13:16:54 CLIENT -> SERVER: tboundary="b1_KvZPwFu2gMzFcs5f9XiBML51sazZsNQRXMqmxiuo"
2020-01-13 13:16:54 CLIENT -> SERVER: Content-Transfer-Encoding: 8bit
2020-01-13 13:16:54 CLIENT -> SERVER: 
2020-01-13 13:16:54 CLIENT -> SERVER: This is a multi-part message in MIME format.
2020-01-13 13:16:54 CLIENT -> SERVER: --b1_KvZPwFu2gMzFcs5f9XiBML51sazZsNQRXMqmxiuo
2020-01-13 13:16:54 CLIENT -> SERVER: Content-Type: text/plain; charset=us-ascii
2020-01-13 13:16:54 CLIENT -> SERVER: 
2020-01-13 13:16:54 CLIENT -> SERVER: This is a test html email
2020-01-13 13:16:54 CLIENT -> SERVER: 
2020-01-13 13:16:54 CLIENT -> SERVER: --b1_KvZPwFu2gMzFcs5f9XiBML51sazZsNQRXMqmxiuo
2020-01-13 13:16:54 CLIENT -> SERVER: Content-Type: text/html; charset=us-ascii
2020-01-13 13:16:54 CLIENT -> SERVER: 
2020-01-13 13:16:54 CLIENT -> SERVER: This is a test html email
2020-01-13 13:16:54 CLIENT -> SERVER: 
2020-01-13 13:16:54 CLIENT -> SERVER: 
2020-01-13 13:16:54 CLIENT -> SERVER: --b1_KvZPwFu2gMzFcs5f9XiBML51sazZsNQRXMqmxiuo--
2020-01-13 13:16:54 CLIENT -> SERVER: 
2020-01-13 13:16:54 CLIENT -> SERVER: .
2020-01-13 13:16:54 SERVER -> CLIENT: 250 OK id=1iqzaQ-000Ars-TL
2020-01-13 13:16:54 CLIENT -> SERVER: QUIT
2020-01-13 13:16:54 SERVER -> CLIENT: 221 gator4001.hostgator.com closing connection

日志的第一行说,我们不授权使用此系统来传输未经请求的、220和/或批量电子邮件。但与此同时,PHPMailer给了我邮件发送给的回复。

,这里的问题是什么,我该如何解决?

另外,我没有使用my@emailaddress.com和domainname.com,而是使用了实际的电子邮件地址和实际的网站地址。只是写在这里,显然人们指出了这里最奇怪的东西。

编辑

请查找下面的php代码:

代码语言:javascript
复制
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

require 'Exception.php';
require 'PHPMailer.php';
require 'SMTP.php';


$mail = new PHPMailer(true);                              
try {
    //Server settings
    $mail->SMTPDebug = 2;
    $mail->isSMTP();
    $mail->Host = 'domainname.com';
    $mail->SMTPAuth = true;
    $mail->Username = 'donotreply@domainname.com';
    $mail->Password = 'mypassword';
    $mail->SMTPSecure = 'ssl';
    $mail->Port = 465;
    //Recipients
    $mail->setFrom('donotreply@domainname.com', 'MyTestEmail');
    $mail->addAddress('info@domainname.com', 'Khan');

    //Content
    $mail->isHTML(true);
    $mail->Subject = 'Test Email body';
    $mail->Body    = 'Test Email body';
    $mail->AltBody = 'Test Email body';

    $mail->send();
    return "SUCCESS";
} catch (Exception $e) {
    return "FAIL";
    // Use the line below to display error
    // echo 'Mailer Error: ' . $mail->ErrorInfo;
}   

?>

**更新**

我在donotreply@domainname.com上收到了回弹的电子邮件,错误如下:

代码语言:javascript
复制
The mail system

<info@domainname.com>: host mail.domainname.com[192.185.30.71] said:
    550-Verification failed for <donotreply@domainname.com> 550-No Such User
    Here 550 Sender verify failed (in reply to RCPT TO command)
Reporting-MTA: dns; gateway21.websitewelcome.com
X-Postfix-Queue-ID: 14259400E4AA1
X-Postfix-Sender: rfc822; donotreply@domainname.com
Arrival-Date: Mon, 13 Jan 2020 08:02:26 -0600 (CST)

Final-Recipient: rfc822; info@domainname.com
Original-Recipient: rfc822;info@domainname.com
Action: failed
Status: 5.0.0
Remote-MTA: dns; mail.domainname.com
Diagnostic-Code: smtp; 550-Verification failed for <donotreply@domainname.com>
    550-No Such User Here 550 Sender verify failed
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-13 15:10:46

问题主要与新创建的电子邮件donotreply@domainname.com本身有关。使用PHPMailer测试的前两个电子邮件地址在收件箱中反弹回来。如果您所面临的问题与我本人完全相同,那么我建议您进行以下故障排除:

确保未将Debug设置为0

$mail->SMTPDebug =2

测试您的代码,并检查PHPMailer最终是否成功。

检查PHPMailer是否回显成功

正如@ADyson所指出的,下面的错误/通知并不意味着不工作PHPMailer。

服务器->客户端: 220-gator4001.hostgator.com ESMTP Exim 4.92 #2 Mon,2020年1月13日07:16:54-0220-我们不授权使用该系统传输未经请求的220和/或批量电子邮件。

其次,通过向不同服务器上的不同域发送电子邮件来测试代码。

测试发送电子邮件到Gmail,Hotmail,雅虎,其他电子邮件托管在另一个服务器上。

检查您的收件箱是否有任何回弹的信息。

如果您收到了一条回弹消息,

;可以肯定的是,PHPMailer工作正常。

与您的主机联系,以获得更多详细信息,向他们提供错误的详细信息,在反弹的电子邮件。

我的问题被hostgator解决了,因为发送到几个电子邮件地址的电子邮件会反弹回来,而Gmail和Hotmail都能很好地工作。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59718024

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档