PHPMailer: SMTP ОШИБКА: не удалось подключиться к серверу: (0) с Godaddy - PullRequest
0 голосов
/ 03 мая 2020

Я получаю сообщение об ошибке:

    2020-05-03 02:33:55 SMTP ERROR: Failed to connect to server: (0)
SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
Mailer Error: SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

Я просмотрел все статьи GoDaddy и статьи о стеке, которые я могу найти, и попробовал их решения - например, изменение портов и т. Д. c. Я также пытался использовать учетные записи Gmail и cPanel для веб-сайтов и электронной почты. Однако большинство решений этой ошибки не относятся к GoDaddy, а их решения относятся к XAMPP и т. Д. c. Любая помощь с благодарностью:)

Для справки, вот код PHP:

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;


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

$mail = new PHPMailer(); // create a new object
$mail->IsSMTP(); // enable SMTP
$mail->SMTPDebug = 1; // debugging: 1 = errors and messages, 2 = messages only
$mail->SMTPAuth = true; // authentication enabled
$mail->SMTPSecure = 'ssl'; 
$mail->Host = "localhost";
$mail->Port = 465; 
$mail->IsHTML(true);
$mail->Username = "abc@def.com";
$mail->Password = "xxx";
$mail->SetFrom("abc@def.com");
$mail->Subject = "Test";
$mail->Body = "hello";
$mail->AddAddress("uvw@xyz.com");

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

Ответы [ 3 ]

0 голосов
/ 03 мая 2020

Я понял, что было не так: по сути, мне просто нужно было заменить $mail->isSMTP(); на $mail->isMail();, и это сработало - просто, чтобы кто-нибудь еще знал, если у них такая же проблема!

0 голосов
/ 06 мая 2020

У меня та же проблема, что я пытался с SSL с портом 465, затем он сказал, что сервисы недоступны, тогда я попробую это, это решит мою проблему, надеюсь, это решит и вашу 1) Убедитесь, что вы используете $ mail-> IsSMTP (); для аутентификации. Ismail работает только для того же сервера с почтовой функцией

2) Это исправит мою проблему $ mail-> SMTPSecure = "tsl"; $ mail-> Port = 587;

Я добавил эти две строки, теперь отправка электронной почты работает отлично, я столкнулся с этой ошибкой SMTP connect () не удалось. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting но, прежде всего, решите мою проблему, надеюсь, это сработает для вас, спасибо

0 голосов
/ 03 мая 2020

Я прошу прощения, если вы предоставили неверную информацию. Однако вы должны убедиться, что SMTP-порт сервера не использует 25 .

...