我已经将AWS SES连接到我的域,它是通过DKIM建立和验证的,SES控制台是快乐的(包括来自地址的邮件)。我已经创建了SMTP凭据,但无法通过PHPMailer和EXIM邮件服务器从服务器发送。
我得到以下响应(xxxx的替换我的实际域)
2021-11-11 09:09:20 SERVER -> CLIENT: xxxx.cprapid.com ESMTP Exim 4.94.2 #2 Thu, 11 Nov 2021 09:09:20 +0000 220-We do not authorize the use of this system to transport unsolicited, 220 and/or bulk e-mail.
2021-11-11 09:09:20 CLIENT -> SERVER: EHLO xxxx.gg
2021-11-11 09:09:20 SERVER -> CLIENT: xxxx.cprapid.com Hello xxxx.gg [x.x.x.x]250-SIZE 52428800250-8BITMIME250-PIPELINING250-PIPE_CONNECT250-AUTH PLAIN LOGIN250-STARTTLS250 HELP
2021-11-11 09:09:20 CLIENT -> SERVER: STARTTLS
2021-11-11 09:09:20 SERVER -> CLIENT: 220 TLS go ahead
SMTP Error: Could not connect to SMTP host.
2021-11-11 09:09:20 CLIENT -> SERVER: QUIT
2021-11-11 09:09:20
2021-11-11 09:09:20
SMTP Error: Could not connect to SMTP host.
Fatal error: Uncaught PHPMailer\PHPMailer\Exception: SMTP Error: Could not connect to SMTP host. in /home/xxxx/public_html/lib/src/PHPMailer.php:21这是一个WHM服务器,我已经设置了一个数字海洋液滴。.gg域是在具有cPanel的WEHM服务器上创建的域。
我认为问题在于它试图通过WHM主机.cprapid.com与服务器进行身份验证,但它应该是.gg域-请参见以下内容:
2021-11-11 09:09:20 CLIENT -> SERVER: EHLO xxxx.gg
2021-11-11 09:09:20 SERVER -> CLIENT: xxxx.cprapid.com Hello xxxx.gg我是EXIM/WHM的新手,我确信我设置的不正确。
救命啊!
发布于 2021-11-11 10:12:47
“我们不授权.”信息不是一个错误,它只是一个“欢迎”的旗帜,没有技术意义或意义。
您所看到的症状与关于证书验证失败的在故障排除指南中描述一样:
在SMTP记录中,这通常会显示为尝试发送STARTTLS命令,紧接着是退出命令。
正如您所说的,这很可能是由于您请求连接的主机名与它答复的证书上的名称不匹配造成的,这是SMTP防火墙重定向的一个症状,在宿主服务中非常常见。您尚未发布代码,但如果您说:
$mail->Host = 'xxxx.gg';服务器以以下方式回复:
SERVER -> CLIENT: xxxx.cprapid.com ESMTP Exim(证书将包含相同的名称),由于xxx.gg != xxxx.cprapid.com,验证将失败。有两种方法可以解决这个问题:
xxxx.cprapid.com)。如果您不能这样做,您可能需要找到一个新的主机提供商。
从它生成的错误中可以看出另一件事是,您已经启用了异常(通过将true传递给PHPMailer构造函数):
$mail = new PHPMailer(true);但是,您并没有将下面的代码包装在try/catch块中,因此没有捕获异常。
https://stackoverflow.com/questions/69925917
复制相似问题