Php mail () не работает, но sendmail есть. - PullRequest
1 голос
/ 17 января 2012

У меня есть экземпляр Amazon EC2, работающий с RH / Linux.Моя проблема - функция php mail (), которая не работает, хотя я могу отправлять почту с sendmail из командной строки.

Я запускаю эту команду.# telnet localhost 25

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
XXXXX

Моя настройка php.ini:

 mail function]
 SMTP = localhost
 smtp_port = 25
 sendmail_path = /usr/sbin/sendmail -t -i
 mail.add_x_header = On

Я не могу понять, что не так.Я не получаю сообщение об ошибке php mail.Я тоже не получаю письма.В чем может быть проблема?

1 Ответ

4 голосов
/ 17 января 2012

Отправка почты на EC2 общеизвестно трудна. Большинство IP-адресов EC2 находятся в черных списках спама. Это в сочетании с ужасными сообщениями об ошибках PHP mail() приводит к довольно ужасному опыту.

Вы захотите использовать Amazon Simple Email Service в сочетании с EC2. Недавно они добавили SMTP-сервис , что означает, что вы можете использовать любую стандартную почтовую библиотеку PHP для отправки писем.

Я лично рекомендую Swiftmailer для этой задачи.

...