PHP 电子邮件未发送至 AOL
PHP Email is not sending to AOL
我有这个脚本可以在注册时向用户发送电子邮件。问题在于它会发送给除 AOL 之外的所有电子邮件客户端。这是一个问题,因为我的客户和她的客户主要使用 AOL 电子邮件。我的代码有问题还是有解决方法?提前致谢。
$to = $EMSPosted_s;
$subject = "Confirmation of Order";
$message = "
<html>
<head>
<title>Confirmation of Order</title>
</head>
<body>
<h1>Welcome to your Here To Thrive Course!</h1>
<h2>Hi ".$UNSPosted_s."</h2>
<h3>Thank you for purchasing the Here To Thrive course from x</h3>
<h5>Many thanks</h5>
<h4>Louise</h4>
<p>www.louiselloyd.life</p>
</body>
</html>";
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$headers .= 'From: <confirmation@louiselloyd.life>' . "\r\n";
$headers .= 'Cc: louise@louiselloyd.life' . "\r\n";
mail($to,$subject,$message,$headers);
?>
很可能是 AOL 的 IP 信誉问题。您还应该使用 SMTP 身份验证通过脚本发送电子邮件。如果您收到来自 AOL 的任何退回邮件,您应该从他们的网站上获得帮助。
对于 SMTP 脚本,请确保您已为用于身份验证的域设置 SPF、DKIM、DMARC 等。
PHP 的默认 mail()
功能在大多数情况下不起作用,尤其是在您的情况下使用 GMail 或 AOL。这是因为您的电子邮件需要以特殊方式格式化才能被某些邮件服务器接受。您最好使用像 PHPMailer 这样的邮件库。
以下是使用 PHPMailer 从 GMail 帐户发送电子邮件的方法。
$mail = new PHPMailer();
// ---------- adjust these lines ---------------------------------------
$mail->Username = "xxx@gmail.com"; // your GMail user name
$mail->Password = "passwd"; // your GMail Password
$mail->AddAddress("yyy@gmail.com"); // recipients email
$mail->FromName = "Your Name"; // readable name
$mail->Subject = "Subject";
$mail->Body = "Body";
$mail->Host = "smtp.gmail.com";
$mail->Port = 465; // or 587
$mail->IsSMTP(); // use SMTP
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->From = $mail->Username;
//----------------------------------------------------------------------
if(!$mail->Send())
{
echo "mail sent";
}
试试这个代码头你没写好。
$headers .= "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$headers .= 'From: <confirmation@louiselloyd.life>' . "\r\n";
$headers .= 'Cc: louise@louiselloyd.life' . "\r\n";
mail($to,$subject,$message,$headers);
?>
我有这个脚本可以在注册时向用户发送电子邮件。问题在于它会发送给除 AOL 之外的所有电子邮件客户端。这是一个问题,因为我的客户和她的客户主要使用 AOL 电子邮件。我的代码有问题还是有解决方法?提前致谢。
$to = $EMSPosted_s; $subject = "Confirmation of Order";
$message = "
<html>
<head>
<title>Confirmation of Order</title>
</head>
<body>
<h1>Welcome to your Here To Thrive Course!</h1>
<h2>Hi ".$UNSPosted_s."</h2>
<h3>Thank you for purchasing the Here To Thrive course from x</h3>
<h5>Many thanks</h5>
<h4>Louise</h4>
<p>www.louiselloyd.life</p>
</body>
</html>";
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$headers .= 'From: <confirmation@louiselloyd.life>' . "\r\n";
$headers .= 'Cc: louise@louiselloyd.life' . "\r\n";
mail($to,$subject,$message,$headers);
?>
很可能是 AOL 的 IP 信誉问题。您还应该使用 SMTP 身份验证通过脚本发送电子邮件。如果您收到来自 AOL 的任何退回邮件,您应该从他们的网站上获得帮助。
对于 SMTP 脚本,请确保您已为用于身份验证的域设置 SPF、DKIM、DMARC 等。
PHP 的默认 mail()
功能在大多数情况下不起作用,尤其是在您的情况下使用 GMail 或 AOL。这是因为您的电子邮件需要以特殊方式格式化才能被某些邮件服务器接受。您最好使用像 PHPMailer 这样的邮件库。
以下是使用 PHPMailer 从 GMail 帐户发送电子邮件的方法。
$mail = new PHPMailer();
// ---------- adjust these lines ---------------------------------------
$mail->Username = "xxx@gmail.com"; // your GMail user name
$mail->Password = "passwd"; // your GMail Password
$mail->AddAddress("yyy@gmail.com"); // recipients email
$mail->FromName = "Your Name"; // readable name
$mail->Subject = "Subject";
$mail->Body = "Body";
$mail->Host = "smtp.gmail.com";
$mail->Port = 465; // or 587
$mail->IsSMTP(); // use SMTP
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->From = $mail->Username;
//----------------------------------------------------------------------
if(!$mail->Send())
{
echo "mail sent";
}
试试这个代码头你没写好。
$headers .= "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$headers .= 'From: <confirmation@louiselloyd.life>' . "\r\n";
$headers .= 'Cc: louise@louiselloyd.life' . "\r\n";
mail($to,$subject,$message,$headers);
?>