我使用 PHPMailer 发送电子邮件,它在 localhost 上运行良好。但是,根据客户的要求,我们必须将所有内容上传到 webmin。PostFix 邮件服务器正在为我们安装。问题是我无法让电子邮件功能在服务器上工作。
这是我的代码。
<?php
require_once('class.phpmailer.php');
$mail = new PHPMailer();
$body = 'Test Email';
$mail->IsSMTP(); // telling the class to use SMTP
$mail->SMTPDebug = 2; // enables SMTP debug information (for testing)
// 1 = errors and messages
// 2 = messages only
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->Host = "smtp.xxx.xxx.xx";
$mail->Port = 25; // set the SMTP port for the GMAIL server
$mail->Username = "";
$mail->Password = "";
$mail->SMTPSecure = 'tsl';
$mail->SetFrom('support@xxx.xxx', 'Support');
$mail->Subject = "PHPMailer Test Subject via smtp, basic with authentication";
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
$mail->MsgHTML($body);
$address = "xxx@hotmail.com";
$mail->AddAddress($address, "Sara Chan");
if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Message sent!";
}
?>
错误消息: SMTP 错误:无法连接到服务器:权限被拒绝 (13) SMTP connect() 失败。邮件程序错误:SMTP 连接()失败。
我已经尝试配置 postfix main.cf 文件,但它仍然不起作用。我试过了:
- http://postfix.state-of-mind.de/patrick.koetter/smtpauth/postfix_configuration.html
- http://www.postfix.org/BASIC_CONFIGURATION_README.html
- http://wiki.centos.org/HowTos/postfix
- http://www.postfix.org/STANDARD_CONFIGURATION_README.html#null_client
这些链接的配置是不同的。我是一名新的 PHP 程序员(仍然是本科生),所有这些都非常令人困惑。现在,我的后缀 main.cf 回到了它的“默认”状态。我现在该怎么办?