Функция электронной почты php не получает электронные письма

хорошо, поэтому я собрал очень основную функцию почты, и, тестируя это, я использовал пару учетных записей электронной почты, одну учетную запись google и другую мою учетную запись. Я получаю все электронные письма в учетной записи google, но не тем, кто указывает на мою работу. Я думаю, это может быть потому, что они были догнаны программным обеспечением для защиты от спама. Любые идеи о том, как я могу разработать почтовую функцию, чтобы не попасть в спам-программное обеспечение?

Вот копия моей почты

$to = 'account@gmail.com'; $subject = 'The subject'; $message = 'Hello,'."\n"; $headers = "MIME-Version: 1.0" . "\r\n"; $headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n"; $headers = 'From: me@mycompnay.com' . "\r\n" . 'CC: anotherone@mycompany.com' . "\r\n"; $mail_sent = mail($to, $subject, $message, $headers); if($mail_sent) { header("location:newlocation.php"); } } 

Много раз это меньше связано с функцией mail () PHP и многое другое касается конфигурации вашего агента почтового транспорта. Многие почтовые серверы будут отскакивать от сообщений, которые, как они предполагают, от спамеров (т.е. неконфигурированных / неправильно сконфигурированных отправителей), прежде чем они даже попадут в спам-фильтр.

Если вы проверите свои журналы MTA, вы, вероятно, найдете некоторые сообщения о отказе, подобные «Почта с этого сервера не разрешена», см. Информацию о черном списке в [insert url].

В спам-фильтрах используется множество разных методов, чтобы определить, действительно ли почта в действительности является спамом или нет.

Вот несколько вещей, которые я бы предложил:

  • Описательная строка темы
  • Описательное сообщение, осторожное с HTML и другим богатым контентом внутри тела, поскольку иногда фильтры спама будут воспринимать его как «рекламу».
  • Полные полные заголовки с реалистичной информацией там как можно больше.

Попытайтесь поэкспериментировать с разными комбинациями и посмотрите, сможете ли вы получить их до своей работы. Хорошо, что ваша учетная запись google получила электронную почту, поэтому вы знаете ее локальную проблему на стороне сервера.

вам, вероятно, нужно правильно отформатировать заголовки и содержимое. границы отсутствуют.

Вот одна простая функция с почтой форматирования HTML:

 <?php function html_mail($i){ $to = $i['to']; $to_name = $i['to-name']; $subject = $i['subject']; $html_message = $i['message']; $from = $i['from']; $from_name = $i['from-name']; $reply_to = $i['reply-to']; $reply_to_name = $i['reply-to-name']; if(!$to || !validate::email($to)){return false;} $email_message = ''; $email_subject = $subject;$email_txt = $html_message; $semi_rand = md5(time()); $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x"; $email_to = ($to_name ? $to_name.'<'.$to.'>':$to); $headers = "From: ".($from_name!='' ? $from_name.'<'.$from.'>':$from)."\n"; if($reply_to){ $headers .= "Reply-To: ".($reply_to_name ? $reply_to_name.'<'.$reply_to.'>':$reply_to)."\n"; } $headers .= "MIME-Version: 1.0\n" . "Content-Type: multipart/mixed;" . " boundary=\"{$mime_boundary}\""; $email_message .= "This is a multi-part message in MIME format.\n\n"; $email_message .= "--{$mime_boundary}\n"; $email_message .= "Content-Type: text/html; charset=utf-8\n"; $email_message .= "Content-Transfer-Encoding: 8bit\n\n"; $email_message .= $email_txt; $email_message .= "\n\n"; $email_message .= "--{$mime_boundary}\n"; $email_message .= "Content-Type: text/plain; charset=utf-8\n"; $email_message .= "Content-Transfer-Encoding: 8bit\n\n"; $email_message .= trim(strip_tags(str_replace(array('<br/>','<br />','<br/>'),"\r\n",$email_txt))); $email_message .= "\n\n"; $email_message .= "--{$mime_boundary}--"; $ok = @mail($email_to, $email_subject, $email_message, $headers); return $ok; } ?> 

если у вас правильно отформатированная почта, вы, вероятно, сможете пройти через фильтры.

Определение спама полностью определяется программным обеспечением, на котором выполняется эвристика спама. Вам нужно будет изучить антиспамовое программное обеспечение, которое использует ваша компания, и понять, почему он попадает в спам. Чаще всего это связано с настройкой вашего почтового сервера. Ключевым фактором, который использует много программного обеспечения, является действительная обратная запись DNS, поэтому вы могли бы изучить это.

Вы должны понять, что если бы программа защиты от нежелательной почты была легко защищена электронной почтой как спам, просто изменив несколько заголовков, тогда программное обеспечение для защиты от нежелательной почты было бы совершенно бесполезным, поскольку спамеры также знали бы эти методы.

Думаю, добавление допустимого заголовка «от» было бы первым делом.

и большое спасибо за все ваши предложения. Я нашел ответ на этот пост

Как изменить конверт с адреса с помощью PHP-почты?

Это сработало.

L.