Задать вопрос
@AUN

Php mail не работает. Почему?

Привет!
Проект на Yii2. Не работает отправка почты с помощью функции mail. Os debian 8. Php 5.6
Из консоли почта отправляется: echo 123 | exim4 myname@domain.ru
exim 4 запущен : ps -e | grep exim4
phpinfo:
mail.add_x_header	On	On
mail.force_extra_parameters	no value	no value
mail.log	/var/log/mail.log	/var/log/mail.log
....
sendmail_from	no value	no value
sendmail_path	/usr/sbin/exim4 -t	/usr/sbin/exim4 -t

/var/log/mail.log ошибок нет

Отправляю так:
$to      = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" ';
var_dump(mail($to, $subject, $message, $headers)); //false


В mail.log указывается, что все отправляется.
  • Вопрос задан
  • 1204 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 1
@AUN Автор вопроса
Я проглядел что находится в /var/log/exim4/paniclog
Там же было следующее:
Unable to set gid=33 or uid(euid=0): forcing real=effective
...

Решил таким образом:
Nano /etc/apache2/mods-available/mpm_prefork.conf
<IfModule mpm_prefork_module>
…
LimitUIDRange 0 2000
</IfModule>

После этого письма стали сразу приходить.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Попробуйте указать пятый параметр у mail по типу "-fnobody@example.com". Вероятно exim'у не хватает адрес отправителя и поля From в заголовках ему не достаточно. Примеры есть в оф.справке.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы