PHPMailer не может подключиться к узлу SMTP - PullRequest
7 голосов
/ 26 мая 2011

получая следующую ошибку:

SMTP -> ОШИБКА: не удалось подключиться к серверу: php_network_getaddresses: сбой getaddrinfo: такой хост не известен. (0) Ошибка SMTP: не удалось подключиться к узлу SMTP. Возникла проблема при отправке этого письма!

Это мои настройки файла конфигурации, так как я следовал этому учебнику PHPMailer

// Configuration settings for My Site

// Email Settings
$site['from_name'] = 'Manish Dekavadiya'; // from email name
$site['from_email'] = 'manish@<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'] = "manish@<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('manish.dekavadiya@gmail.com', 'Manish Dekavadiya');

if(!$mailer->Send())
{
    echo 'There was a problem sending this mail!';
}
else
{
    echo 'Mail sent!';
}
$mailer->ClearAddresses();
$mailer->ClearAttachments();

также получаю еще одну ошибку, когда я попробовал пример, приведенный в phpmailer docs @ examples / test_smtp_gmail_basic.php

SMTP -> ОШИБКА: не удалось подключиться к серверу: php_network_getaddresses: сбой getaddrinfo: такого хоста нет известен. (0) Ошибка SMTP: не удалось подключиться к узлу SMTP. Был проблема при отправке этого письма!

поэтому должна быть ошибка настройки или конфигурации. не может быть ошибки кода.

Ответы [ 3 ]

7 голосов
/ 26 мая 2011

SMTP настроен?И если это так, он настроен на прослушивание smtp..com через порт 587?Если сервер не настроен самостоятельно, нередко они вместо этого слушают mail..com.Кроме того, попробуйте подключиться к порту 25, чтобы узнать, можно ли настроить его на прослушивание порта SMTP по умолчанию.

Сообщения об ошибках в любом случае очень четкие.Хост не отвечает на вашу попытку подключения.Причиной может быть неправильная конфигурация как на сервере, так и в PHP, проблемы с брандмауэром, проблемы с маршрутизацией, проблемы с DNS и т. Д.

3 голосов
/ 29 июня 2014

Надеюсь, это поможет кому-то еще, потому что я боролся с этой же ошибкой.Сначала я получал.Я получаю сообщение об ошибке, в котором говорится, что он не может подключиться ().Затем я включил отладку и получил указанную вами ошибку.Решение, которое работало для меня, состояло в том, чтобы изменить 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
2 голосов
/ 30 июня 2014

У меня была эта проблема некоторое время назад, все проверилось просто отлично, но проблема сохранилась Перезагрузка httpd.service решила это.

...