I live ExBB and CMS Limbo! » Форумы и сайты » Записная книжка PHP » Логирование почтовых отправлений

Страниц (1): [1]
 

1. технарь - 10 апреля 2018 — 21:36 - перейти к сообщению

Логирование PHP скриптов отправляющих почту


Здесь описан один из способов как можно вести лог скриптов, что отправляют почту методами PHP.
Это удобно, если у вас на сервере поселился спаммер и вы не знаете где его искать, т.к. сами пути запускающих скриптов по-умолчанию не падают в /var/log/syslog или в /var/log/mail.log.

В PHP начиная с версии 5.3 добавить логирование довольно просто.
Открываем файл php.ini и добавляем 2 строчки:
code:
mail.add_x_header = On
mail.log = /var/log/php.mail.log

mail.add_x_header добавляет заголовок для всех исходящих сообщений.
mail.log указывает путь к лог-файлу запускаемых скриптов, адресатов и заголовков. Убедитесь чтобы этот файл был доступен на запить веб-серверу (обычно это пользователь www-data).

Теперь в заголовках письма будет вставляться следующее:
 Цитата:
X-PHP-Originating-Script: 0:testmail.php

Где 0 — это UID, а testmail.php — это имя файла скрипта.
В лог /var/log/php.mail.log будет падать более расширенная информация:
mail() on [/var/www/romantelychko/www/testmail.php:3]: To: roman@romantelychko.com -- Headers:

Powered by ExBB v1.1.180311