PHPMailer的无法连接到SMTP主机
收到以下错误:PHPMailer的无法连接到SMTP主机
SMTP -> ERROR: Failed to connect to server: php_network_getaddresses: getaddrinfo failed: No such host is known. (0) SMTP Error: Could not connect to SMTP host. There was a problem sending this mail!
这是因为我跟了这PHPMailer tutorial
// Configuration settings for My Site
// Email Settings
$site['from_name'] = 'Manish Dekavadiya'; // from email name
$site['from_email'] = '[email protected]<my-domain>.com'; // from email address
// Just in case we need to relay to a different server,
// provide an option to use external mail server.
$site['smtp_mode'] = 'enabled'; // enabled or disabled
$site['smtp_host'] = "smtp.<my-domain>.com";
$site['smtp_port'] = 587;
$site['smtp_username'] = "[email protected]<my-domain>.com";
$site['smtp_password']="<password>";
,并使用邮件类和扩展类提到我的配置文件设置在教程如下:
/*****sendmail.php****/
// Grab our config settings
require_once($_SERVER['DOCUMENT_ROOT'].'/config.php');
// Grab the FreakMailer class
//echo $_SERVER['DOCUMENT_ROOT'];
require_once($_SERVER['DOCUMENT_ROOT'].'/lib/MailClass.inc');
// instantiate the class
$mailer = new FreakMailer();
// Set the subject
$mailer->Subject = 'This is a test';
$mailer->SMTPDebug = 1;
// Body
$mailer->Body = 'This is a test of my mail system!';
// Add an address to send to.
$mailer->AddAddress('[email protected]', 'Manish Dekavadiya');
if(!$mailer->Send())
{
echo 'There was a problem sending this mail!';
}
else
{
echo 'Mail sent!';
}
$mailer->ClearAddresses();
$mailer->ClearAttachments();
也越来越另一个错误时,我试图在PHPMailer的文档@实施例中给出的示例/ test_smtp_gmail_basic.php
SMTP -> ERROR: Failed to connect toserver: php_network_getaddresses: getaddrinfo failed: No such host is known. (0) SMTP Error: Could not connect to SMTP host. There was a problem sending this mail!
所以必须有设置或配置错误。不能有代码错误。
是否设置了SMTP?如果是这样,它被配置为在端口587上收听smtp..com?如果服务器不是由你自己设置的,他们听邮件并不罕见。另外,尝试连接到端口25,看它是否可能配置为侦听默认的smtp端口。
错误信息在任何情况下都非常清楚。主机未响应您的连接尝试。原因可能是服务器和PHP中的配置错误,防火墙问题,路由问题,DNS问题等。
谢谢。但是,与端口25相同的错误 – maniclorn 2011-05-26 11:28:11
你可以从运行你的PHP应用程序的计算机ping主机吗?如果你可以,那么服务器是最新的,然后尝试telnet到您尝试连接到的SMTP端口并查看它回复的内容。 – inquam 2011-05-26 11:45:21
我可以ping mail.mydomain.com,但在ping上找不到smtp.mydomain.com。telnet with mail.mydomain.com回复... 。无法在端口23上打开与主机的连接:连接失败 – maniclorn 2011-05-26 11:58:04
希望这可以帮助别人,因为我正在对抗这个相同的错误。首先我得到了。我得到一个错误,说它无法连接()。然后我打开了调试程序,并得到了你提到的错误。为我工作的解决方案是将smtp..com更改为IP地址。
$mail->Host = 'smtp.whateverDomain.com';
到
$mail->Host = 'theIPaddress';
调试
$mail->SMTPDebug = 1; // enables SMTP debug information (for testing)
// 1 = errors and messages
// 2 = messages only
看起来像一个典型的DNS问题... – 71GA 2017-10-13 16:23:41
我前一阵子有这个问题,一切都签出得很好,但问题依然存在。 httpd.service的重启解决了它。
谁会想到这个......这个问题解决了我的情况。谢谢 – Sam 2016-01-21 06:48:00
那么,错误信息看起来很清楚。你确定'smtp.your-domain.com'存在吗?谁给了你这个信息,网络主机? – 2011-05-26 10:51:32
错误正是在那里:“无法找到套接字传输”ssl“ - 你忘了配置PHP时启用它吗?” – 2011-05-26 11:12:18
telnet smtp.your-domain.com 587,有没有服务响应? – 2011-05-26 11:12:55