Intereting Posts

Содержимое, удаленное из электронной почты на php mail ()

У меня есть письмо, которое я пытаюсь отправить (вся электронная почта находится в заголовках). Фактически, электронная почта отправляется. Но когда он добирается до места назначения, контент удаляется. Если я отправляю то же электронное письмо, построенное по тому же коду с другого сервера, все отлично работает.

Когда я печатаю его с помощью nl2br(htmlspecialchars($headers, ENT_QUOTES)) , это то, что я получаю:

 From: kittsil@example.com Reply-to: kittsil@example.com MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="cccf6094979eaede770a2a2e88fc83e9" Content-Transfer-Encoding: 7bit This is a MIME encoded message. --cccf6094979eaede770a2a2e88fc83e9 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit You are not being awesome.... --cccf6094979eaede770a2a2e88fc83e9-- 

Когда отправляется электронное письмо, тело пуст, и когда я смотрю на него в «show original» Gmail, он выглядит одинаково, но содержимого нет.

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

Вам не хватает пустых строк в вашем теле письма.

Цитата из RFC :

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

(Акцент мой)

Добавьте правильные пустые строки, и он работает:

Заголовок:

 From: kittsil@example.com Reply-to: kittsil@example.com MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="cccf6094979eaede770a2a2e88fc83e9" Content-Transfer-Encoding: 7bit 

Тело:

 This is a MIME encoded message. --cccf6094979eaede770a2a2e88fc83e9 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit You are not being awesome.... --cccf6094979eaede770a2a2e88fc83e9--