我正在使用 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 端有一条错误消息或其他内容,但它所做的只是连接然后断开连接,没有其他解释。