Обработка обратных вызовов List-Unsubscribe на сервере - PullRequest
0 голосов
/ 03 октября 2018

При добавлении заголовков электронной почты List-Unsubscribe какая обработка требуется на стороне сервера для обратных вызовов?

В заголовок можно добавить как mailto-ссылку, так и web-ссылку, в PHPMailer это может выглядеть так:

$email->AddCustomHeader("List-Unsubscribe: <mailto:unsubscribe@example.com?subject=Unsubscribe>, <http://example.com/unsubscribe.php?unsubscribeid=$id>");

Но должен ли каким-то образом mailto-адресавтоматически обрабатывать отмену подписки, или это нормально, если запрос поступает в папку «Входящие», которая часто проверяется администратором списка, который вручную обрабатывает запросы на отписку?

А как насчет веб-ссылки?Должен ли он указывать на скрипт, который тут же откажется от подписки получателя, или он может просто указать на веб-страницу с формой отписки?

1 Ответ

0 голосов
/ 03 октября 2018

Вы можете справиться с этим так, как вам нравится, однако вы должны также знать о заголовке List-Unsubscribe-Post (определенном в RFC8058 ), поскольку он делает вас гораздо менее склонным к случайным отпискам, вызванным почтойсканеры.

Я бы порекомендовал обрабатывать их автоматически.Это не так сложно.URL-адреса в списке отмены подписки должны быть полностью автономными, то есть вы должны встроить все необходимые данные (например, хэш уникального идентификатора пользователя и идентификатор списка рассылки) в URL-адреса, поэтому для HTTP вы можетеuse:

'<https://www.example.com/listunsub/' . $userid .'/' . $listid . '>'

Вы можете настроить перезапись на своем веб-сервере, чтобы сопоставить этот шаблон URL с соответствующими переменными в вашем PHP-сценарии и выполнить необходимые операции с базой данных, чтобы удалить их из списка рассылки.

Для электронной почты это немного по-другому:

'<mailto:listunsub-' . userid . '-' . $listid . '@example.com .'>'

В этом последнем формате вы должны настроить свой почтовый сервер так, чтобы он определял префикс «listunsub-», и использовать его для передачи сообщения в скрипт, который может извлечьидентификаторы пользователя и списка.Обратите внимание, что вам не нужна тема или тело сообщения - сам адрес содержит все, что вам нужно, и это означает, что получателю не нужно писать сообщение - его почтовый клиент может просто отправить пустое сообщение на адрес иу вас будет достаточно информации для работы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...