2015-04-23 9 views
1

Я пытаюсь отправить электронное письмо с моей учетной записи hotmail с помощью PHPMailer. Это работает отлично от моего компьютера, но когда я пытаюсь его на другом компьютере, я получаю сообщение об ошибке:SMTP connect() failed PHP mailer

2015-04-23 17:31:18 КЛИЕНТА -> SERVER: EHLO LOCALHOST
2015-04-23 17:31:18 КЛИЕНТ -> СЕРВЕР: QUIT
2015-04-23 17:31:18 Ошибка SMTP connect(). Мейлер Ошибка

Вот мой код:

<?php 
require "C:\wamp\www\PHPMailer-master\PHPMailerAutoload.php"; 
    $mail = new PHPMailer(); 
    $mail->SMTPSecure = 'SSL'; 
    $mail->Username = "[email protected]"; 
    $mail->Password = "rerered"; 
    $mail->AddAddress("[email protected]"); 
    $mail->FromName = "My Name"; 
    $mail->Subject = "My Subject"; 
    $mail->Body = "My Body"; 
    $mail->Host = "smtp.live.com"; 
    $mail->Port = 587; 
    $mail->IsSMTP(); 
    $mail->SMTPAuth = true; 
    $mail->From = $mail->Username; 
    if(!$mail->Send()) 
    { 
    echo "Mailer Error"; 
    } 
    else 
    { 
    echo "Message has been sent"; 
    } 
?> 
+0

Является ли порт 587 открытым на этом «другом» ПК? –

+0

Как я могу это узнать? –

+0

Возможный дубликат [Ошибка SMTP с PHPMailer] (http://stackoverflow.com/questions/4185942/smtp-error-with-phpmailer) – Synchro

ответ

1

Во-первых, вы должны добавить «Debugging Mode» в код, это покажет вам, где вы собираетесь не так.

$mail->SMTPDebug = SMTP::DEBUG_SERVER; 
$mail->SMTPDebug = 2; //Alternative to above constant 

У меня была аналогичная проблема, но узнал, что это был CFS Firewall в Cpanel/WHM блокирует порт.

  1. Войти в WHM.
  2. Перейти к Конфигурация Конфигурация безопасности & Опция межсетевого экрана внутри плагинов.
  3. Нажмите на настройку брандмауэра.
  4. Фильтр по настройкам SMTP.
  5. Найдите параметр SMTP_ALLOWUSER и добавьте имя пользователя учетной записи Cpanel, разделенное комой.
  6. Перезапустите брандмауэр.

Если у вас нет доступа к WHM, попросите своего хостинг-провайдера.

Смежные вопросы