PHPMailer问题。无法连接到服务器?

时间:2019-10-29 06:23:54

标签: php phpmailer

我是PHP的新秀。我连接了PHPMailer。我正在训练中发送电子邮件,但出现错误

我的代码

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require ("vendor/autoload.php");

$mail = new PHPMailer(true);
try {
    //Server settings
    $mail->SMTPDebug = 2;

    $mail->isSMTP();
    $mail->Host = 'localhost';
    $mail->SMTPAuth = true;
    $mail->Username = ''; -The mail I'm trying to send an email to
    $mail->Password = ''; - password of this email
    $mail->SMTPSecure = 'ssl';
    $mail->Port = 465;

    $mail->setFrom('', 'admin'); The mail I'm trying to send an email to
    $mail->addAddress('', 'Recipient'); -recipient
    $mail->isHTML(true);
    $mail->Subject = 'Test Mail Subject!';
    $mail->Body    = 'This is SMTP Email Test';

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

我想提前说一下这封邮件不安全。我也尝试过更改STMPSECURE(tls)

我知道了

  

SMTP错误:无法连接到服务器:连接被拒绝(111)

1 个答案:

答案 0 :(得分:1)

您必须在SMTP服务器上拥有一个帐户,例如:smtp.googlemail.com(并且最容易获得),因此可以这样设置:

$mail->Host = 'smtp.googlemail.com';
$mail->SMTPAuth = true;
$mail->Username = 'YOUR_GOOGLE_USERNAME';  // NOT email address to send to
$mail->Password = 'YOUR_GOOGLE_PASSWORD';
$mail->SMTPSecure = 'tls';
$mail->Port = 587;