Электронная почта PHPMailer переходит в спам, электронная почта Outlook - нет
Я отправляю электронные письма с помощью PHPMailer через контролируемый мной SMTP-сервер, и у меня настроены и работают DKIM и SPF, однако, когда я отправляю тестовое электронное письмо на свою учетную запись gmail, он сразу попадает в папку спама и заявляет, что моя электронная почта похожа на сообщения, обнаруженные их фильтрами спама.
Однако если я затем использую Outlook для отправки точно такого же сообщения через тот же SMTP-сервер, оно не фильтруется как спам.
Это заголовки письма, которое отправлено в спам
Delivered-To: my_address@gmail.com
Received: by 10.227.117.6 with SMTP id o6csp468220wbq;
Thu, 16 Aug 2012 00:21:15 -0700 (PDT)
Received: by 10.43.117.129 with SMTP id fm1mr196323icc.1.1345101675202;
Thu, 16 Aug 2012 00:21:15 -0700 (PDT)
Return-Path: <bounce+95719fab75@my_smtp_server_domain.com>
Received: from mailapproved.com (mailapproved.com. [199.195.193.140])
by mx.google.com with ESMTP id s18si1547632igi.61.2012.08.16.00.21.14;
Thu, 16 Aug 2012 00:21:15 -0700 (PDT)
Received-SPF: pass (google.com: domain of bounce+95719fab75@my_smtp_server_domain.com designates 199.195.193.140 as permitted sender) client-ip=199.195.193.140;
Authentication-Results: mx.google.com; spf=pass (google.com: domain of bounce+95719fab75@my_smtp_server_domain.com designates 199.195.193.140 as permitted sender) smtp.mail=bounce+95719fab75@my_smtp_server_domain.com; dkim=pass header.i=@mailapproved.com
Received: from ml.my_smtp_server_domain.com.com (ml.my_smtp_server_domain.com.com [199.195.193.133])
by my_smtp_server_domain.com.com (Postfix) with ESMTPA id E3CC68E057
for <my_address@gmail.com>; Thu, 16 Aug 2012 07:21:12 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=my_smtp_server_domain.com;
s=server1; t=1345101672;
bh=TsyHxri8hUJjEnMBm8JUJzfLs5a3ea9aRZQ15toMNyQ=;
h=Date:To:From:Reply-to:Subject:List-Unsubscribe;
b=hOUSOx/fN8ZwTlEp4KBAKSGRZHgH6kSj0xUeLlq8J2JGBEE2x6c2b5sh/nFwqx45T
kuorzu3TsLDDMHCBLmSNLfrYWqyCzkT4Iwh1NJlCL5zm4GwYDXVrVsd+6AjJNfzPN+
W5idEJ62+MCgsMqgCd6gmpACMcqntgwgp+WcLKFc=
Date: Thu, 16 Aug 2012 15:21:12 +0800
To: Me <my_address@gmail.com>
From: Someone <no-reply@my_smtp_server_domain.com>
Reply-to: No Reply <no-reply@my_smtp_server_domain.com>
Subject: Welcome to Blah
Message-ID: <f2039f590798697bc998c686920020df@ml.my_smtp_server_domain.com>
List-Unsubscribe: <mailto:unsubscribe@my_smtp_server_domain.com?subject=Unsubscribe>, <http://ml.my_smtp_server_domain.com.com/unsubscribe/e783daa664>
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="b1_f2039f590798697bc998c686920020df"
Здесь есть два сервера: my_smtp_server_domain.com, который является SMTP-сервером, и ml.my_smtp_server_domain.com, который является почтовым приложением (для законных новостных рассылок для людей, у которых есть двойной OP'd in).
Само сообщение является простым электронным подтверждением для списка рассылки.
Я не понимаю, как это может работать, когда я использую Outlook, но терплю неудачу с PHPmailer, что отличается?
2 ответа
У меня возникла та же проблема с использованием PHPMailer, и вот что решило эту проблему для меня: установите для Отправителя (он отличается от "От") действительную учетную запись электронной почты для домена, с которого вы отправляете письмо. Это заставляет PHPMailer правильно устанавливать информацию "envelope-from", чтобы электронная почта проходила проверку SPF и Sender-ID. Без этого "envelope-from" - это идентификатор пользователя на уровне операционной системы и комбинация серверов, которые невозможно проверить. Надеюсь, это поможет.
Пример кода:
$mail = new PHPMailer;
$mail->From = 'from_email@domain.com';
$mail->Sender = 'sender_email@domain.com';
...
Заголовки, отправляемые Outlook и PHPMailer, или любым другим почтовым программом, отличаются. Многие фильтры спама автоматически увеличивают оценку спама при обнаружении таких заголовков. Вероятно, это потому, что они так распространены в спаме.
В качестве первого шага удалите все заголовки, которые идентифицируют отправляющую систему как PHPMailer. Если это не поможет, тогда посмотрите на само сообщение и попробуйте изменить его так, чтобы оно не выглядело как спам, поскольку ваше сообщение может быть на грани.