Получение ответа от почтового сервера, если письмо было отправлено - PullRequest
2 голосов
/ 13 февраля 2010

Недавно у нас возникла проблема, заключающаяся в том, что почтовые серверы не могли отправлять важные синхронизированные электронные письма, но функция Zend_Mail send () не возвращала false, поскольку электронная почта была успешно доставлена ​​на почтовый сервер.

В нашей ситуации реплика почты была заблокирована из-за нескольких тысяч не отправляемых писем, созданных парой заданий cron.

Как мы можем связаться с сервером и получить какой-то ответ, который говорит нам, что электронное письмо было отправлено.

Речь идет не о подпрыгивании, потому что нам все равно, если письма могут быть доставлены, мы просто заботимся о том, чтобы их можно было отправлять.

Ответы [ 2 ]

2 голосов
/ 13 февраля 2010

Я не системный администратор, но в зависимости от вашего почтового сервера, я думаю, вы можете перехватить эти письма и отправить / отправить их обратно в ваше приложение Zend Framework. например, в postfix i думаю вы можете сделать это в фильтре содержимого после очереди http://www.postfix.org/FILTER_README.html

1 голос
/ 13 февраля 2010

Я думаю, что это зависит от вашего почтового сервера, и какие бы функции уведомлений он не имел, на стороне PHP мало что можно сделать. Я не являюсь системным администратором, но думаю, что при обычной настройке Linux / Unix уведомления о таких сбоях будут отправляться в корневой почтовый ящик или системный журнал, не так ли?

...