Назад | Перейти на главную страницу

Заголовок Content-Type удаляется в электронной почте после переключения серверов

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

Заголовок, который получают большинство пользователей, выглядит следующим образом (конфиденциальная информация заменена тегами <>):

Delivered-To: <email>
Received: by 10.229.215.75 with SMTP id hd11cs31754qcb; Fri, 8 Jul 2011 06:00:20 -0700 (PDT)
Received: by 10.150.236.18 with SMTP id j18mr2060469ybh.84.1310130019825; Fri, 08 Jul 2011 06:00:19 -0700 (PDT)
Return-Path: <return path>
Received: from <server> ([<ip address>])
    by mx.google.com with ESMTP id f14si8302490ybc.25.2011.07.08.06.00.18;
    Fri, 08 Jul 2011 06:00:18 -0700 (PDT)
Received-SPF: neutral (google.com: <ip address> is neither permitted nor denied by best guess record for domain of <return path) client-ip=<ip address>;
Authentication-Results: mx.google.com; spf=neutral (google.com: <ip address> is neither permitted nor denied by best guess record for domain of <return path>) smtp.mail=<return path>
Received: by <server name> (Postfix, from userid 1001)
id 41B4C162FFA; Fri,  8 Jul 2011 08:00:17 -0500 (CDT)
To: <user email address>
Subject: <subject>
X-PHP-Originating-Script: 33:Email.php
From: <from email address>
Content-Type: text/html; charset=utf-8
Message-Id: <20110708130018.41B4C162FFA@<server>>
Date: Fri,  8 Jul 2011 08:00:17 -0500 (CDT)

Однако пользователь с ошибками получает следующий заголовок:

Return-Path: <return path>
Received: from <server> (UnknownHost [<ip address>]) by seriousw1.seriousw1.com with SMTP; Mon, 11 Jul 2011 08:00:26 -0500
Received: by <server> (Postfix, from userid 1001)
   id 72F2A163F34; Mon, 11 Jul 2011 08:00:09 -0500 (CDT)
To: <user email address>
Subject: <subject>
X-PHP-Originating-Script: 33:Email.php
From: <from email>
Message-ID: <809141a1b4f842e0a015f20c000dab91@com>
X-SmarterMail-Spam: SPF_None, Reverse DNS Lookup, ISpamAssassin 3 [raw: 2], DK_None, DKIM_None
X-SmarterMail-TotalSpamWeight: 5

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

Я пробовал разные вещи, но теперь полностью застрял. Любая помощь или мысли очень приветствуются.

Спасибо!

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

  1. Ваше программное обеспечение, генерирующее почту (не Postfix, которое пересылает почту), не создает поле заголовка. Поэтому другие почтовые серверы пытаются добавить недостающие поля. Другие этого не делают.
  2. Почтовый сервер или спам-фильтр получателя удаляет поле заголовка перед доставкой.

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

  • неверный идентификатор сообщения:
  • отсутствует Дата:
  • отсутствует Content-Type:
  • отсутствует Content-Transfer-Encoding:
  • отсутствует MIME-версия:

Таким образом, это также может привести к высокому рейтингу спама 5.