Я использую почтовый пакет PEAR для отправки электронной почты из моего скрипта. Я почти уверен, что все подключено и объявлено правильно, но когда скрипт запускается, он просто подключается, а затем немедленно отключается от моего почтового сервера без фактической отправки электронной почты.
Из моих журналов Postfix:
Nov 18 16:15:49 mailer postfix/smtpd[30346]: connect from xxx-xxx-xxx-xxx.static.cloud-ips.com[xxx.xxx.xxx.xxx]
Nov 18 16:15:49 mailer postfix/smtpd[30346]: disconnect from xxx-xxx-xxx-xxx.static.cloud-ips.com[xxx.xxx.xxx.xxx]
Что дает?
<?php
require_once('Mail.php'); // loads in PEAR Mail package
$mailer_params['host'] = 'mailer.example.com';
$mailer_params['port'] = 25;
$mailer_params['auth'] = true;
$mailer_params['username'] = 'user@mailer.example.com';
$mailer_params['password'] = 'password';
$mail =& Mail::factory('smtp', $mailer_params);
$headers = array(
'From' => 'user@example.com',
'Reply-To' => 'user@example.com',
'Subject' => 'Test Email'
);
$message = "whatever";
$mail->send('Test <other.user@example.com>', $headers, $message);
?>
Я знаю, что мой сервер Postfix работает, так как у меня есть несколько других приложений, использующих его без проблем. В этом сценарии учетные данные пользователя такие же, как и для других приложений.
Мой сервер Postfix использует SASL_auth (настроенный с CRAM-MD5), если это помогает. Хотелось бы, чтобы у меня было сообщение об ошибке или что-то на стороне PHP или на стороне Postfix, но все, что он делает - просто подключается, затем отключается без других объяснений.