我一直在尝试使用 pear 和 php 脚本发送邮件。我已经搜索了一天多,还没有找到我的问题。当我在网站上运行此代码时,没有任何反应。它快速加载然后停止。我运行了一些 echo 命令,发现代码特别停在:
$mail = $smtp->send($to, $headers, $body);
就是这样。没有其他事情发生。我没有收到任何错误输入或任何东西,我只是看到我的回声发生在此之前,而在它之后没有回声。我已经安装了梨,以及梨邮件。我“认为”我正确安装了它们,因为我可以在任何地方的命令行中输入“pear”,它会调出菜单。我已经通过路由器和防火墙打开了端口 465,tcp。我在一台windows xp机器上。我不知道错误日志将在哪里查看是否发生了任何不良情况。我的服务器是 apache 2.2,托管在这个 windows 盒子上。
<?php
require_once "Mail.php";
$from = "user1@gmail.com";
$to = "user2@yahoo.com";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
$server = "ssl://smtp.gmail.com";
$username = "user1@gmail.com";
$password = "pass";
$headers = array (
"From" => $from,
"To" => $to,
"Subject" => $subject);
$smtp = Mail::factory("smtp",
array ("host" => $server,
"port" => 465,
"auth" => true,
"username" => $username,
"password" => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}
?>