Почта

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

Адрес отправителя

Не все знают, что у каждого отправляемого письма есть минимум два значения, которые можно назвать адресом отправителя. Во первых, это адрес который указывается в заголовке "From" письма. Давайте назовем его отображаемым адресом отправителя. Во вторых, это адрес, который указывается в команде "From" SMTP-протокола. Назовем его реальным адресом отправителя.

Эти адреса могут отличаться. При этом, отображаемый адрес практически (возможно, кроме настроек антиспама у получателя) не влияют на отправку письма и обработку ошибок. А реальный адрес никак не показывается получателю в почтовом клиенте. Вот такая путаница, спасибо разработчикам почтовых протоколов.

При отправке используется реальный адрес отправителя. Он фигурирует в логах, на него приходят сообщения о доставке, на него в первую очередь обращают внимание анитспам-системы. Это должен быть реальный адрес, и на него должна в обязательном порядке приниматься почта. Некоторые антиспам-системы проверяют существование этих адресов, и если адрес не принимает почту — это однозначный признак спам-рассылки или плохо настроенной почтовой системы. Отправлять почту с несуществующего адреса — верный способ сделать так, чтобы с вашего домена и вашего сервера перестали принимать почту.

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

Адрес отправителя на хостинговых площадках

Каждому пользователю на хостинге присваивается почтовый адрес на одном из наших доменов, с которого идет отправка почты. Для этих адресов должн быть настроен прием почты на наших офисных почтовых серверах. Так как php-скрипты и cron-скрипты выполняются от разных пользователей, то и адрес отправителя у них может быть разный. Напишите администратору, если хотите изменить почтовый адрес для одного из пользователей.

Если необходимо, можно указать другой реальный адрес отправителя при отправке письма. Для этого используется флаг -f команды sendmail. Для того, чтобы это использовать нужно чтобы администратор проверил существование адреса отправителя, который вы планируете использовать и внес его в белые списки. Напишите адринистратору, если собираетесь использовать новый адрес.

Для всех адресов, кроме адресов пользователей и адресов из белых списков отправка запрещена! Если почта не отправляется, напишите администратору, или выберите другой адрес отправителя.

Обработка ошибок

Если при отправке произошла ошибка, то на реальный адрес отправителя отправляется сообщение с подробностями. Это позволяет, например, очистить базу данных от пользователей с несуществующими адресами или вовремя обнаружить, что сообщение не дошло до получателя.

Эти сообщения о доставке можно обрабатывать автоматически. Для парсинга сообщений о доставке есть готовые библиотеки, например, flufl.bounce. Если нужна помощь с использованием — пишите.

Спам

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

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

На вопрос — как сделать так, чтобы рассылка не попала в спам, есть только один универсальный ответ — посылайте только ту почту, которую получатель будет не против получить. Технические приемы здесь, скорее всего, не помогут.

DKIM и SPF

Есть один технический аспект, который важен для того, чтобы письмо не попало в спам — убедить принимающую сторону что адрес отправителя не подделан. Для этого используются технологии SPF и DKIM. SPF перечисляет почтовые серверы, с которых можно отправлять почту для данного домена, а DKIM удостоверяет цифровой подписью отображаемый адрес отправителя. Напишите администратору, чтобы узнать, используется ли у вас при отправке DKIM и SPF.

Прием почты

На хостинговых площадках почта не принимается, а идет сразу на офисные почтовые серверы. Если вам нужно завести почтовый ящик, или возникли вопросы по входящей почте, обращайтесь к Алексею Бычкову bychkov@action-media.ru.