我正在建设一个网站,我需要实现一个表单发送选项,经过大量研究,我决定使用PHPMAILER。出于测试目的,我将脚本设置为使用我的gmail地址,它运行良好,但当我输入客户的电子邮件详细信息时,它不起作用。
当我提交申请时,这就是我得到的
SMTP->错误:无法连接到服务器:连接被拒绝(111)
我联系了支持人员并验证了端口和主机,还联系了客户端并验证了登录信息。它可能不起作用还有其他原因吗?
更新我做了一个小脚本,让我可以轻松地测试设置
<?php
require 'classes/class.phpmailer.php';
require 'classes/class.smtp.php';
$mail = new PHPMailer(true);
$mail->IsSMTP();
try{
$mail->SMTPDebug = 1;
$mail->SMTPAuth = true;
//$mail->SMTPSecure = "ssl";no
$mail->Host = "smtp.domain.com";
$mail->Port = 25;
$mail->Username = "username";//user@domain.com
$mail->Password = "pwd";
$mail->AddAddress('alme1304@gmail.com');//RECIPIENT
//$mail->SetFrom('name@yourdomain.com', 'First Last');//IDK WHAT 'THIS' IS FOR
//$mail->AddReplyTo($_POST['email'], $_POST['f_name'].' '.$_POST['l_name']);//FOR THE 'REPLY-TO' FIELD
$mail->Subject = 'test email';
$mail->MsgHTML('test_email');
$mail->Send();
} catch (phpmailerException $e) {
echo $e->errorMessage(); //Pretty error messages from PHPMailer
echo $mail->Host;
echo '<pre>';
print_r($mail);
echo '</pre>';
} catch (Exception $e) {
echo $e->getMessage(); //Boring error messages from anything else!
}
我曾经遇到过一些主机,他们声称你可以使用smtp.domain.com,但你不能。使用托管提供商的smtp服务器(通常可以从他们的知识库或支持中获得),而不是smtp.domain.com
也验证端口,许多不使用25,但可以使用26,或一些其他(从知识库或支持)
如果您让我们知道谁是的托管提供商,我们可能会提供更好的帮助