2012-01-17 3 views
1

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

Я не могу fingure вне что не так. Я не получаю никакой почтовой ошибки php. Я также не получаю никакой электронной почты. В чем проблема?

+0

'SMTP' и' smtp_port' предназначены только для Windows, поэтому удалите их из своей конфигурации. Какие параметры вы используете с 'sendmail' при отправке вручную? – eth0

+0

sendmail [email protected] – user1147995

+0

Спасибо, что я отправляю из sendmail sendmail [email protected] Я тестирую Пока! . – user1147995

ответ

4

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

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

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