我目前将我的网站托管在freehostia上,该网站不允许使用SMTP。为解决这个问题,我在Zoho(www.zoho.com)创建了一个帐户,该帐户允许您将域名链接到他们的服务器并通过他们发送和接收电子邮件。 我也按照指示在我的主机上安装了phpmailer。
我使用Zoho提供的smtp信息创建了一个测试文件,据我所知,一切都设置正确。
问题是,当我尝试发送邮件时,我收到错误:
邮件程序错误:以下发件人地址失败:donotreply@domain.com:调用Mail()而未连接
我的测试文件代码如下:
<?php
require '../PHPMailer-master/class.phpmailer.php';
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->SMTPSecure = "ssl";
$mail->Host = "smtp.zoho.com";
$mail->Port = 465;
$mail->Username = "donotreply@domain.com";
$mail->Password = "mypassword";
$mail->From = "donotreply@domain.com";
$mail->FromName = "Domain";
$mail->AddAddress("testaddress@gmail.com");
$mail->Subject = "Test with PHPMailer";
$mail->Body = "This is a sample body text!";
$mail->IsHTML (true);
if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Message sent!";
}
?>
有什么建议吗?
答案 0 :(得分:3)
事实证明,通过freehostia的免费计划不允许任何传出连接,因此尝试联系任何外部邮件服务器是不可能的。 谢谢你的建议。
答案 1 :(得分:0)
我花了很多时间来弄清楚CentOS 7默认禁用SMTP连接。
尝试运行这些行,如果遇到此“邮件程序错误:以下发件人地址失败:”和“调用邮件()未连接”。
sudo setsebool -P httpd_can_sendmail 1 sudo setsebool -P httpd_can_network_connect 1
感谢以下网络文章: