PHP-адрес электронной почты для спама

Я пытаюсь послать по электронной почте новых зарегистрированных пользователей для проверки электронной почты (PHP), но я не понимаю, почему было отправлено письмо на спам, я уже проверил похожие вопросы, и все ответы касаются заголовков,

Мне кажется, что мне сложно понять эти заголовки и как они проверяются,
На веб-сайте отправителя? скажем, я отправил как user@google.com, а фактический домен домена domain.com, как бы он знал? и является ли это одной из основных причин, почему это относится к спаму?
Я использую VPS, это имеет какое-то отношение к этому?
Я просто пытаюсь понять ясные / простые причины того, почему электронное письмо будет проверяться как спам

и что, если я отправил с IP-адреса сервера, а не сам домен

Solutions Collecting From Web of "PHP-адрес электронной почты для спама"

1) Проверьте заголовки. Вы можете использовать любую библиотеку отправки электронной почты, такую ​​как PHPMailer (http://code.google.com/a/apache-extras.org/p/phpmailer/wiki/PHPMailer#Documentation_and_Resources)

2) Проверьте сервер хостинга. Если вы используете общий хостинг, то, скорее всего, он был внесен в черный список в домене электронной почты.

Большинство почтовых серверов будут выполнять обратный поиск DNS, чтобы люди из домена domain.com не делали вид из другого домена. Он будет проверять, разрешает ли IP-адрес, с которого было отправлено письмо, с тем же доменным именем отправителя электронной почты. Yahoo и другие крупные компании также будут использовать DKIM для проверки вас.

Часто ваше сообщение может оказаться в Bulk / Spam, если оно не содержит большого количества контента или вы отправили много одного и того же контента на один сервер.

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

Настройте адрес электронной почты в своем домене , замените me@mydomain.com своим вновь созданным адресом электронной почты в вашем домене и id@hotmailOrgmail.com с вашим идентификатором Hotmail / Gmail в следующем сценарии.

Также замените Your Name своим именем в следующем скрипте и протестируйте его на своем сервере:

 <?php $myName = "Your Name"; $myEmailAddressonDomain = "me@mydomain.com"; $myPreferredEmailAddresson = "id@hotmailOrgmail.com"; $mail = $_POST['email_field']; $clientName = $_POST['name_field']; $subject = $_POST['subject_field']; $text = $_POST['message_field']; $headers = 'From: "$name" <$yourEmailAddressonDomain>'.PHP_EOL.'Reply-To: '.$_POST['mail'].PHP_EOL; $to = '"$yourname" <$myPreferredEmailAddresson>'; $message = $text.PHP_EOL.PHP_EOL."---".PHP_EOL."From: ".$name." <".$mail.">"; /* Server-side form validations */ $err = "Error with "; if (!checkLen($name)) { $err.='Name'; } else if (!checkLen($mail) && !checkEmail($mail)) { $err.='Email'; } else if (!checkLen($subject)) { $err.='Subject'; } else if (!checkLen($text)) { $err.='Message'; } if (strlen($err)>11) { echo $err.' field'; exit; } /* end validations */ elseif (mail($to, $subject,$message, $headers)) { echo "<span style='color: #336600'>Your message has been sent.</span>"; } else { echo "An error occurred, please try again."; } function checkLen($str,$len=1) { return isset($str) && mb_strlen(strip_tags($str),"utf-8") > $len; } function checkEmail($str) { return preg_match("/^[\.A-z0-9_\-\+]+[@][A-z0-9_\-]+([.][A-z0-9_\-]+)+[Az]{1,4}$/", $str); } ?> 

Электронная почта поместится в вашу папку «Входящие» (или любую неспасную почту) Hotmail / Gmail через адрес электронной почты вашего домена .

Примечание. Нажав « Ответить» в полученном электронном письме, вы увидите адрес электронной почты клиента (как мы установили в Reply-To заголовке выше)

Внесите соответствующие изменения, и вам хорошо идти.

поскольку вы работаете с VPS, вы можете подумать о настройке DKIM и SPF на своем сервере, они используются почтовыми службами, такими как Gmail, для классификации вашего сервера как законного сервера.