【问题标题】:(Could not connect to SMTP host) using PHPMailer in my website on my VPS(无法连接到 SMTP 主机)在我的 VPS 上的网站中使用 PHPMailer
【发布时间】:2022-06-16 01:24:58
【问题描述】:

我有一个 VPS 服务器。

我在该 VPS 服务器上托管了一个网站。

我在我的 VPS 中创建了一个电子邮件 msacademy@managementskillsacademy.com

我想使用此电子邮件向我的用户发送邮件。

我想使用 PHPMailer 发送邮件

这是我的代码:

<?php

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Eception;

require "mail/src/PHPMailer.php";
require "mail/src/SMTP.php";
require "mail/src/Exception.php";

$mail = new PHPMailer(true);

try {
    $mail->SMTPDebug = SMTP::DEBUG_SERVER;
    $mail->isSMTP();
    $mail->Host = "mainserver.local";
    $mail->SMTPAuth = true;
    $mail->Username = "msacademy@managementskillsacademy.com";
    $mail->Password = "my password";
    $mail->SMTPSecure = 'ssl';
    $mail->Port = 465;
    

    $mail->setFrom("msacademy@managementskillsacademy.com", "Fahd Abrah");
    $mail->addAddress("msacademy@managementskillsacademy.com");

    
    $mail->isHTML(true);
    $mail->CharSet = "UTF-8";
    $mail->Subject = "Thanks for registering";
    $mail->Body = "Thank you so <b>much</b>";
    $mail->AltBody = "Thank you so much";

    $mail->send();
} catch (Exception $e) {
    echo "Message could not be sent. Error: " . $mail->ErrorInfo;
}

但我得到了一个错误:

2022-06-15 14:15:16 SMTP ERROR: Failed to connect to server: (0)
SMTP Error: Could not connect to SMTP host.
Message could not be sent. Error: SMTP Error: Could not connect to SMTP host.

如何解决这个错误? 谢谢

【问题讨论】:

    标签: php email phpmailer vps


    【解决方案1】:

    mainserver.local 这样的主机名不太可能拥有有效的证书,因此由于证书丢失或无法验证,TLS 层的连接可能会失败。由于您的失败是在连接级别,请设置SMTPDebug = SMTP::DEBUG_CONNECTION 以获取有关连接早期阶段的更多信息。当您在端口 465 上使用 SMTPS 时,这可能不会显示太多,如果它被破坏,则几乎没有反馈。

    因为这看起来像一个本地邮件服务器,所以你可能不需要加密。

    【讨论】:

      猜你喜欢
      • 2012-05-24
      • 2018-09-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多