如何解决从phpmailer发送邮件时,为什么我的发件人被postfix拒绝?
当我运行以下PHP代码时,出现错误。
dummy
邮件似乎已发送。 PHPMailer不会生成任何错误,并且数据库代码正在运行。
这是mail.log中生成的错误。
l3
我尝试在PHP代码中将要验证的发送人地址更改为我的用户。
我尝试将具有匹配哈希表的smtpd_sender_login_maps参数添加到我的postfix配置中,以将无回复地址映射到我进行身份验证的用户,但是它将其作为未使用的参数忽略。
后缀配置:
$mail = new PHPMailer;
$mail->isSMTP();
$mail->SMTPDebug = SMTP::DEBUG_SERVER; // debug
$mail->Host = 'localhost';
$mail->Port = 25;
$mail->SMTPAuth = true;
$mail->Username = $uname;
$mail->Password = $pw;
$mail->CharSet = PHPMailer::CHARSET_UTF8;
$mail->setFrom('no-reply@example.com','website registration');
$mail->addAddress($cleaned_email);
$mail->Subject = 'Please verify your account';
$msg = '[registration text...]'
$msg = wordwrap($msg,70);
$mail->Body = $msg;
if (!$mail->send()) {
echo $mail->ErrorInfo;
exit();
} else {
[... add user to db,etc...]
}
解决方法
“发件人”地址的语法不正确:
$ mail-> setFrom(“在示例点com上不答复,'网站注册');
您需要使用有效的电子邮件地址,例如:
$mail->setFrom('no-reply@example.com','website registration');
,
我的问题与PHP Mailer无关。我发布的php代码有效。我的问题是我的电子邮件服务器设置。我在“超级用户”上发布了一个与服务器相关的更多问题:https://superuser.com/questions/1580944/soho-postfix-dovecot-configuration-for-small-web-app-and-user-base
谢谢大家的答复。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。