Как включить лог сообщений phpmail

На виртуальном хостинге

Важно! Инструкция подходит только для hosting Linux.

Обычно лог phpmail используют для определения источника рассылки спама. mail.log работает только на версии PHP 5.3 и выше.

Для включения лога добавьте в файл php.ini следующие строки:

mail.add_x_header = On
mail.log = 'путь-до-каталога-хостинга/phpmail.log'

Путь до каталога хостинга зависит от используемой панели управления:

  • ISPmanager: /var/www/u1234567/data/
  • ParallelsPlesk: /var/www/vhosts/u1234567.plsk.regruhosting.ru/
  • cPanel: /var/www/u1234567/

Где u1234567 — ваш логин хостинга.

Изменения в файл php.ini вносятся по инструкции: Изменение параметров PHP.

Готово, вы включили логирование сообщений.

На VPS

  1. В корневой папке сайта создайте файл info.php и добавьте в него следующие строки:
<?php
phpinfo();
?>

    2. В браузере перейдите по адресу http://ваш-домен/info.php:

Логирование почты можно включить для конкретного сайта или для всех сайтов на сервере.
Чтобы добавить настройки для одного сайта, необходимо добавить код в файл, путь к которому указан в Loaded Configuration File. В нашем примере это /var/www/php-bin/user_name/php.ini.
Чтобы добавить настройки для всех сайтов на сервере, необходимо добавить код в файл php.ini, путь к которому указан в Configuration File (php.ini) Path. В нашем примере это /opt/php/5.3/etc/php.ini.
Обратите внимание! Права на файл php.ini могут запрещать запись в него. Перед редактированием файла разрешите запись в него через панель ISPmanager или по SSH с помощью команды: 

chmod +w /путь/php.ini

    3. Для включения логирования добавьте в файл php.ini следующий код:

mail.add_x_header = On
mail.log = "/var/tmp/php.mail.log"

/var/tmp/php.mail.log — это файл, в который будет записываться лог отправки сообщений. Права на данный файл должны разрешать запись в него. Права на запись можно дать через панель ISPmanager или по SSH с помощью команды:

chmod +w /var/tmp/php.mail.log

    4. Перезапустите сервер Apache с помощью команды:

  • Debian/Ubuntu:
service apache2 restart
  • CentOS: 
service httpd restart

Готово, вы включили логирование сообщений.

Если вы не нашли ответ, спросите у нас!
Написать в поддержку