使用 Godaddy 托管的 php 邮件功能,电子邮件进入垃圾邮件箱而不是收件箱
Email goes into spam box instead of inbox using php mail function with Godaddy hosting
我正在使用 PHP 邮件功能通过 GoDaddy 的共享主机发送邮件,以前电子邮件是进入收件箱,但现在我收到的是垃圾邮件箱而不是收件箱。
下面是我的代码:
<?php
if(isset($_POST['submit']))
{
$name=$_POST['name'];
$company=$_POST['company'];
$email=$_POST['email'];
$to = $email;
$from = $email;
$CC = 'myname@gmail.com';
$subject ="Testing";
$htmlContent = '
Dear '.$name.' from '.$company.',
\nThank you for your interest in our impact initiatives.
\nPlease reach out to us, we are happy to learn more from you!
\nAll the best,
Dev Team.
';
$headers = "From: ".$name." <".$from.">\r\n";
$headers .= "Cc: $CC";
// if($extension ==""){
$headers .= "\nMIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
// }
$semi_rand = md5(time());
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
// if(!$extension ==""){
// $headers .= "\nMIME-Version: 1.0\n" . "Content-Type: multipart/mixed;\n" . " boundary=\"{$mime_boundary}\"";
//
// $htmlContent = "This is a multi-part message in MIME format.\n\n" . "--{$mime_boundary}\n" . "Content-type:text/html; charset=\"iso-8859-1\"\n" . "Content-Transfer-Encoding: 7bit\n\n" . $htmlContent . "\n\n";
//
// $htmlContent .= "--{$mime_boundary}\n";
// }
if(mail($to, $subject, $htmlContent, $headers)) {
header("Location:index.php");
// echo "<p>mail sent to $to and $headers!</p>";
} else {
echo "<p>mail could not be sent!</p>";
}
}
?>
我已经用完所有 headers 但我仍然面临同样的问题。如果需要更改任何内容,请告诉我,请给我一些解决此问题的建议。
提前谢谢你。
很可能 phpmail 函数不符合 anti-spam 大多数提供商使用的方法,因为发送邮件的服务器不被认可。 DKIM、SPF、RIP需要匹配。要找出 gmail 不喜欢您的电子邮件的哪些方面,最好查看已发送邮件的 headers 以确保它符合您的域发送标准。但是,如果您想使用现有电子邮件帐户或为您的域创建一个新帐户(例如 website@)并使用 STMP 身份验证来快速解决此问题,应该可以防止您的电子邮件被标记为发送服务器应该已经符合所需的条件。这是一个 link 到应该有帮助的线程:Sending email with PHP from an SMTP server
我正在使用 PHP 邮件功能通过 GoDaddy 的共享主机发送邮件,以前电子邮件是进入收件箱,但现在我收到的是垃圾邮件箱而不是收件箱。
下面是我的代码:
<?php
if(isset($_POST['submit']))
{
$name=$_POST['name'];
$company=$_POST['company'];
$email=$_POST['email'];
$to = $email;
$from = $email;
$CC = 'myname@gmail.com';
$subject ="Testing";
$htmlContent = '
Dear '.$name.' from '.$company.',
\nThank you for your interest in our impact initiatives.
\nPlease reach out to us, we are happy to learn more from you!
\nAll the best,
Dev Team.
';
$headers = "From: ".$name." <".$from.">\r\n";
$headers .= "Cc: $CC";
// if($extension ==""){
$headers .= "\nMIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
// }
$semi_rand = md5(time());
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
// if(!$extension ==""){
// $headers .= "\nMIME-Version: 1.0\n" . "Content-Type: multipart/mixed;\n" . " boundary=\"{$mime_boundary}\"";
//
// $htmlContent = "This is a multi-part message in MIME format.\n\n" . "--{$mime_boundary}\n" . "Content-type:text/html; charset=\"iso-8859-1\"\n" . "Content-Transfer-Encoding: 7bit\n\n" . $htmlContent . "\n\n";
//
// $htmlContent .= "--{$mime_boundary}\n";
// }
if(mail($to, $subject, $htmlContent, $headers)) {
header("Location:index.php");
// echo "<p>mail sent to $to and $headers!</p>";
} else {
echo "<p>mail could not be sent!</p>";
}
}
?>
我已经用完所有 headers 但我仍然面临同样的问题。如果需要更改任何内容,请告诉我,请给我一些解决此问题的建议。
提前谢谢你。
很可能 phpmail 函数不符合 anti-spam 大多数提供商使用的方法,因为发送邮件的服务器不被认可。 DKIM、SPF、RIP需要匹配。要找出 gmail 不喜欢您的电子邮件的哪些方面,最好查看已发送邮件的 headers 以确保它符合您的域发送标准。但是,如果您想使用现有电子邮件帐户或为您的域创建一个新帐户(例如 website@)并使用 STMP 身份验证来快速解决此问题,应该可以防止您的电子邮件被标记为发送服务器应该已经符合所需的条件。这是一个 link 到应该有帮助的线程:Sending email with PHP from an SMTP server