PHP отправляет сообщения MIME ... больше не работает - PullRequest
2 голосов
/ 22 января 2010

Я только что переключился с общего сервера на виртуальный выделенный. Весь сайт работает, но мои почтовые формы перестали отправлять электронные письма MIME, как раньше.

Что раньше появлялось перед переключением сервера:

привет fwend

То, что теперь появляется в письмах (кажется, что мой клиент не поддерживает MIME):

Content-Type: составной / альтернативный; граница = "== Д.Л. bound_b08bcfabdc459ae7e87e493a984115b3"

Это составное сообщение MIME от ваши друзья на Example.com. если ты читаем это, кажется, у нас есть сообщение для доставки, но ваша почта клиент не настроен на получение этих типы сообщений. Мы сожалеем о неудобство: (

- == DL-bound_b08bcfabdc459ae7e87e493a984115b3

Тип содержимого: текст / обычный текст; кодировка = изо-8859-1

Content-Transfer-Encoding: 7 бит

привет fwend

Есть ли какой-нибудь переключатель в PHP или что-то, что мне нужно включить для отправки MIME?

1 Ответ

1 голос
/ 23 января 2010

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

Возможные причины:

1. EOL
Я использовал "\ r \ n" как eol для заголовков MIME (следуя спецификации) , но (общий) сервер хотел "\ n"

2. Последний заголовок
Некоторые почтовые сервера добавляют свои собственные заголовки. Если последний заголовок оканчивается на «\ n», и почтовый сервер также может испортить ситуацию.

3. Пустой заголовок
Пустой заголовок, который вызывает "\ n \ n" в заголовках $, повредит заголовки. «\ N \ n» или «пустая строка» обозначает конец заголовка письма (или начало тела)

...