Это сообщение имеет простейший вид - заголовок и тело разделены пустой строкой. Блок заголовка для наглядности выделен полужирным шрифтом. В пустой строке всего два невидимых символа: CR и LF (\r\n). В РНР это можно представить так:
$the_last_header = "Subject: Just a note\r\n"; $blank_line = "\r\n";
Поля заголовка сообщения электронной почты
Заголовки электронной почты или поля заголовка представляют собой строки, разделенные символами CR/LF, означающими для почтовой программы инструкции или резюмирующие характер и структуру сообщения. Каждая строка поля заголовка состоит из имени заголовка и его значения, отделенных друг от друга двоеточием и пробельными символами.
Первые два поля заголовка, которые видны в приведенном сообщении, - это Return-Path (обратный адрес) и Received (получено), представляющие собой информацию конверта, указывающие адрес, на который должно быть возвращено сообщение, если оно не будет принято, и детали, относящиеся к способу его получения.
Return-Path
Поле заголовка Return-Path записывается последним МТА, участвующим в доставке сообщения. Оно отображает обратный путь к отправителю сообщения. Если по какой-либо причине сообщение придется возвратить, это будет сделано в соответствии с данным полем заголовка.
Received
Поле заголовка Received добавляется каждым сервером SMTP в начало всех входящих сообщений, чтобы показать, через сколько МТА (называемых также транзитными участками - hops) прошло сообщение на пути к месту назначения.
Большинство серверов SMTP отклоняет сообщения, содержащие более 25 полей Received. Подсчет количества транзитных участков имеет целью предотвращение зацикливания; сообщение будет отвергнуто и послано обратно по адресу, заданному в поле заголовка Return-Path, если оно пройдет через слишком большое количество серверов SMTP.
Message-ID
Поле заголовка Message-ID создается хостом, генерирующим сообщение, и содержит идентификатор сообщения электронной почты, который должен быть глобально уникальным.
Хотя указанное в этом поле имя домена должно представлять хост, на котором создано сообщение, во многих случаях используется собственная схема генерации ID ввиду отсутствия имени домена или по соображениям безопасности.
Обязательные заголовки
Некоторые поля заголовка обязательны для всех сообщений электронной почты, тогда как другие могут быть опущены. Следующие поля заголовка должны обязательно присутствовать: Date, From и либо Всс, либо То. Если отсутствует То, то должно иметься поле Всс, и наоборот.