【发布时间】:2014-01-27 16:28:36
【问题描述】:
我正在尝试为客户设置 PHPMailer。他有自己的邮件服务器,位于某个 IP 地址。当被要求提供通过系统发送电子邮件的信息时,他给出了以下信息:
Host: xx.xxx.x.x
Port: 25
Domain: mydomain.local
Username: myemail@mydomain.local
Password: <myemailpassword>
From: myemail@anotherdomain.xx
(他确认用于外部电子邮件发送)
我尝试通过将参数设置为上面的确切命名来设置 PHPMailer。
$mail->IsSMTP();
$mail->SMTPDebug = 1;
$mail->SMTPAuth = true;
$mail->SMTPSecure = "ssl";
$mail->Host = "xx.xxx.x.x";
$mail->Port = 25;
$mail->Username = "myemail@mydomain.local";
$mail->Password = <myemailpassword>;
$mail->SetFrom('myemail@anotherdomain.xx', 'Webname');
$mail->[...]
我收到以下错误:
Failed to connect to server (0)
所以我尝试通过telnet 发送电子邮件以检查它是客户的电子邮件服务器还是 PHPMailer 设置:
telnet xx.xxx.x.x 25
它通过了,我已经连接到服务器了。
helo mydomain.local
我收到“你好”作为回复。这让我相信这里可能是 PHPMailer 设置错误。
我也尝试不使用 SMTP:
$mail->Host = "ssl://xx.xxx.x.x";
$mail->Port = 25;
$mail->Username = "myemail@mydomain.local";
$mail->Password = "password";
$mail->SetFrom('myemail@anotherdomain.xx', 'Webname');
$mail->[...]
又不行了。我要解决这个问题了吗?我之前只熟悉设置 PHPMailer 以使用 Gmail,所以我不知道可能是什么问题,因为我使用的是“个人”电子邮件服务器。
【问题讨论】: