Email SMTP设置在本地主机上工作,但在服务器上它不使用PHPMailer
这就是我面临的问题 本地主机 使用SMTP设置测试邮件是否正常工作 使用上述smtp设置创建新用户邮件的工作 服务器 使用SMTP设置测试邮件是否正常工作 使用上述smtp设置创建新用户邮件无效 我在两种情况下都回显了邮件smtp设置,它们完全相同。我得到的错误是 SMTP->错误:无法连接到服务器:php\u网络\u getaddresses: getaddrinfo失败:名称或服务未知0 SMTP连接 失败了 任何建议都会有帮助 我进一步调试它。事实证明,这种行为很古怪Email SMTP设置在本地主机上工作,但在服务器上它不使用PHPMailer,email,yii,phpmailer,Email,Yii,Phpmailer,这就是我面临的问题 本地主机 使用SMTP设置测试邮件是否正常工作 使用上述smtp设置创建新用户邮件的工作 服务器 使用SMTP设置测试邮件是否正常工作 使用上述smtp设置创建新用户邮件无效 我在两种情况下都回显了邮件smtp设置,它们完全相同。我得到的错误是 SMTP->错误:无法连接到服务器:php\u网络\u getaddresses: getaddrinfo失败:名称或服务未知0 SMTP连接 失败了 任何建议都会有帮助 我进一步调试它。事实证明,这种行为很古怪 if (isset(
if (isset($_POST['User']))
{
if (UserUtil::validateAndSaveUserData($model, $_POST))
{
$mailer = new UiMailer();
$mailer->setFrom('fromAddress', 'fromName');
$mailer->setTo('toaddress');
$mailer->setSubject('Test subject');
$mailer->setBody('Test Body');
$mailer->Mailer = 'smtp';
$mailer->Username = 'username';
$mailer->Password = 'password';
$mailer->Host = 'host';
$mailer->Port = 25;
$mailer->SMTPAuth = true;
$status = $mailer->send() ? true : false;
if($status == true)
{
print "Sucess";
}
else
{
print $mailer->ErrorInfo . "</br>";
print "Failuere";
}
exit;
}
}
如果我在UserUtil::validateAndSaveUserData$model、$\u POST中对调用进行注释,它就可以正常工作。在函数中,我使用Yii框架验证和保存模型。我进一步调试了这个函数。我在系统中有以下关系
用户只有一个人
用户有一个地址
因此,在上面的调用中,如果我对$model->address->attributes或$model->address->validate或$model->address->save的地址部分进行注释,它就可以正常工作。地址的保存功能工作正常。没有与此相关的问题。您可以从开始。听起来像是DNS问题。这是验证码规则的问题,用于检查GD要求,这破坏了流程。我不太明白为什么?当我发送测试电子邮件时,不会调用该选项。现在至少我可以继续了。