Intereting Posts
Какой тип API это? Загрузка файла на php-сервере с устройства Android Имитировать конструкцию языка php-массива или проанализировать с помощью регулярного выражения? как вставить пустое значение в поле типа даты mysql? Измените размер изображения без искажения, сохраняя пропорции, а затем избыток урожая с помощью WideImage Загрузка файла PHP с использованием параметров URL Выбранное значение выпадающего списка Cakephp не корректно отображается в Firefox, когда страница обновляется Массив поиска PHP в массиве Как поддерживать «AddType x-mapp-php5 .php» на моей машине разработки ini_set () область действия? Как я мог избежать использования MySQL-запроса в цикле While в PHP Загрузка файла в Yii с помощью ajax Как анализировать данные GET URL, имеющие URL-адрес, хранящийся в переменной? Как определить два числа, которые ближе друг к другу в массиве Проверьте, существует ли файл на удаленной машине

Ошибка PHPMailer: SMTP -> ОШИБКА: Не удалось подключиться к серверу

Я пытаюсь google все утро, и я думаю, что мне нужно Stackoverflow прямо сейчас!

Я написал простой скрипт для отправки почты (от hotmail до gmail), но я получаю эту ошибку:

SMTP -> ОШИБКА: Не удалось подключиться к серверу: попытка подключения завершилась неудачно, потому что связанная сторона не ответила должным образом через какое-то время или не удалось установить соединение, потому что подключенный хост не смог ответить. (10060) Ошибка SMTP Connect (). ошибка

Это код:

<?php require_once("../includes/phpMailer/class.phpMailer.php"); require_once("../includes/phpMailer/class.smtp.php"); $to_name = "RECEIVER NAME"; $to = "RECEIVER@gmail.com"; $subject = "Mail test at " . strftime("%T", time()); $message = "This is a test message"; $message = wordwrap($message, 70); $from_name = "MY NAME"; $from = "MY_EMAIL@hotmail.it"; $mail = new PHPMailer(); $mail->IsSMTP(); $mail->SMTPDebug = 2; $mail->Host = "smtp.live.com"; $mail->Port = 25; $mail->SMTPAuth = true; $mail->Username = "MY USERNAME (hotmail)"; $mail->Password = "MY PASSWORD (hotmail)"; $mail->FromName = $from_name; $mail->From = $from; $mail->AddAddress($to, $to_name); $mail->Subject = $subject; $mail->Body = $message; $result = $mail->Send(); echo $result ? 'Sent' : 'Error'; ?> 

Другая информация заключается в том, что даже не работала стандартная функция mail (), и проверка php info я нашел это:

sendmail_from – МОЯ ПРАВИЛЬНАЯ ПОЧТА (hotmail)

sendmail_path – нет значения

SMTP – localhost

smtp_port – 25

Спасибо!!

Я считаю, что порт 25 заблокирован на smtp.live.com. Я тоже не могу подключиться к smtp.live.com:25. Попробуйте вместо этого использовать порт 587 с TLS. Таким образом, это будет:

 $mail->Port = 587; $mail->SMTPSecure = 'tls'; 

Я нашел решение этой проблемы, попробуйте это

Проверьте, использует ли ваш PHP расширение openSSL или нет …!

  1. Измените php.ini из установленной папки php
  2. Искать расширение = php_openssl.dll
  3. Первоначальное будет выглядеть следующим образом : extension = php_openssl.dll
  4. Удалить ';' и это будет выглядеть как расширение = php_openssl.dll
  5. Если вы не можете найти расширение = php_openssl.dll , добавьте это расширение строки = php_openssl.dll .
  6. Затем перезапустите сервер Xampp или LAMP или APACHE (в зависимости от того, какой из них вы используете).

Надеюсь, что этот метод решит вашу проблему …

Вы можете проверить поддерживаемые порты. Например, мой хост поддерживает smtp через порты 25, 3535 и 80.
Использование порта 80 работало для меня