SMTP 接続エラー: 「SMTP Connect() failed」エラーの解決
Gmail を使用してメールを送信しようとすると、エラーが発生する可能性があります「SMTP -> エラー: サーバーへの接続に失敗しました: 接続がタイムアウトしました (110)\nSMTP Connect() が失敗しました。メッセージは送信されませんでした。\nメーラー エラー: SMTP Connect() が失敗しました。」というメッセージが表示されました。このエラーは、SMTP サーバーへの接続の確立に問題があることを示しています。
この問題を解決するには、電子メールの送信を担当する PHP コードを変更する必要があります。具体的には、
$mail->IsSMTP();
IsSMTP() メソッドは非推奨であるため、使用しないでください。この行を削除またはコメントアウトすると、コードは電子メールの送信に自動的に SMTP を使用するようになり、接続の問題が解消され、電子メールの配信が正常に行われるようになります。
変更を加えた更新されたコードは次のとおりです:
require 'class.phpmailer.php'; // path to the PHPMailer class
require 'class.smtp.php';
$mail = new PHPMailer();
$mail->Mailer = "smtp";
$mail->Host = "ssl://smtp.gmail.com";
$mail->Port = 587;
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "[email protected]"; // SMTP username
$mail->Password = "mypasswword"; // SMTP password
$Mail->Priority = 1;
$mail->AddAddress("[email protected]","Name");
$mail->SetFrom($visitor_email, $name);
$mail->AddReplyTo($visitor_email,$name);
$mail->Subject = "Message from Contact form";
$mail->Body = $user_message;
$mail->WordWrap = 50;
if(!$mail->Send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
} else {
echo 'Message has been sent.';
}
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3