Я пытаюсь настроить систему проверки электронной почты для системы входа, над которой я работаю.У меня почти все работает в моем php-коде, вплоть до строки $ mailer-> send ($ message), которая возвращает вышеуказанную ошибку.
Я смотрел на несколько других подобных проблем, связанных со стековым потоком и другимисайты, но ни одно из предложенных решений не сработало.У меня менее безопасные приложения включены в учетной записи Gmail, которая отправляет подтверждение по электронной почте.Я пробовал ssl и tls с портами 465 и 587 соответственно.Я не хочу отключать что-либо, связанное с безопасностью без необходимости.Хотя я достаточно уверен в своих знаниях в области кодирования, я боюсь, что у меня очень мало опыта в таких вопросах, связанных с сервером.В прошлом я успешно создал систему входа с подтверждением электронной почты, но я не помню, как мне удалось избежать этой проблемы.Если это связано с брандмауэрами или чем-то в этом роде, я прошу лишь немного больше информации, так как можно предположить, что я, по сути, неспециалист в этой области.
<?php
require_once './vendor/autoload.php';
function sendVerificationEmail($userEmail, $verificationCode)
{
$transport = (new Swift_SmtpTransport('smtp.gmail.com', 465, 'ssl'))
->setUsername("fromEmail@email.com")
->setPassword("password");
$mailer = new Swift_Mailer($transport);
$body = "";
$message = (new Swift_Message('Verify your email'))
->setFrom("fromEmail@email.com")
->setTo($userEmail)
->setBody($body);
echo "Message Created. Send To: " . $userEmail;
try
{
if ($mailer->send($message, $errors))
{
echo "email success.";
return true;
}
else
{
echo "email no good.";
echo "ERROR: " . $errors;
return false;
}
}
catch(Swift_SwiftException $e)
{
echo "ERROR: " . $e->getMessage();
}
}
?>
Большая часть этого кода получена из стандартных руководств.Я просто пытаюсь убедиться, что электронное письмо отправлено, прежде чем я действительно включу функциональность для проверки.Я не знаю, почему это не отправка электронной почты.В частности, возвращается сообщение об ошибке «Не удалось установить соединение с хостом smtp.gmail.com [Время ожидания истекло # 110]».
Спасибо, что уделили время.