【发布时间】:2018-02-08 22:52:59
【问题描述】:
我正在尝试使用 PEAR 在 Fedora 服务器机器上发送电子邮件,但无处可去。
以下是我尝试使用的代码。代码中的电子邮件身份验证设置不是实际的,但我使用的信息是从我的电子邮件客户端配置中提取的,所以应该可以工作。
我也在尝试获取调试信息以了解发生了什么。将 'debug' 设置为 'true' 是否足够或是否需要其他东西?在哪里可以找到调试日志信息?
很多问题,但我希望有人能指引我正确的方向。
我也尝试了 PHPMailer,但没有成功。我有这种感觉,机器上的某些配置正在阻塞...
还有一件事,这个确切的代码可以在 Ubuntu 机器上运行,所以我知道它可以工作。我正在尝试将所有服务从 Ubuntu 机器转移到 Fedora 机器。
<?php
require_once "Mail.php";
$from = "demo@demo.com";
$recipients = 'demo@demo.com';
$headers["From"] = $from;
$headers["To"] = 'demo@demo.com';
$headers["Reply-To"] = $from;
$headers["Subject"] = 'Testing';
$headers["MIME-Version"] = "1.0";
$headers["Content-Type"] = "text/html; charset=UTF-8";
$body = 'Testing';
$smtpinfo["host"] = "mail.demo.com";
$smtpinfo["port"] = "587";
$smtpinfo["auth"] = true;
$smtpinfo["username"] = "demo@demo.com";
$smtpinfo["password"] = "password";
$smtpinfo["debug"] = true;
$mail_object = Mail::factory("smtp", $smtpinfo);
$mail_object->send($recipients, $headers, $body);
if (PEAR::isError($mail_object)) {
$ret['success'] = false;
$ret['msg'] = 'Message delivery failed...';
} else {
$ret['success'] = true;
$ret['msg'] = 'data is valid';
}
return $ret;
?>
谢谢
【问题讨论】: