2016-07-07 3 views
2

У меня проблема с отправкой почты с использованием почтового класса smtp, когда я использую свой код отправки электронной почты, используя smtp в моей локальной системе, в то время работает префект, но когда я пытаюсь использовать этот код на реальном сервере, я получаю каждый время SMTP удалось соединиться ошибкеsmtp connect failed in smtp mail

я использую этот код для отправки почты с помощью SMTP мэйлера класса

require 'mail/PHPMailerAutoload.php'; 
$mail = new PHPMailer; 
$mail->isSMTP(); 
$mail->SMTPDebug = 2; 
$mail->Host = 'smtp.gmail.com'; 
$mail->SMTPAuth = true; 
$mail->Username = '[email protected]'; 
$mail->Password = 'mypassword';   
$mail->SMTPSecure = 'tls';    
$mail->From = '[email protected]'; 
$mail->FromName = 'Mailer'; 
$mail->addAddress('[email protected]', 'Joe User'); 
$mail->addAddress('[email protected]'); 
$mail->addReplyTo('[email protected]', 'Information'); 
$mail->addCC('[email protected]'); 
$mail->addBCC('[email protected]'); 
$mail->WordWrap = 50; 
$mail->isHTML(true); 
$mail->Subject = 'Here is the subject'; 
$mail->Body = 'This is the HTML message body <b>in bold!</b>'; 
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients'; 
if(!$mail->send()) { 
echo 'Message could not be sent.'; 
echo 'Mailer Error: ' . $mail->ErrorInfo; 
} else { 
echo 'Message has been sent';} 

, что мой код это работает в местном, но не работает в реальном сервере

я сделал все настройки в мой файл php.ini, такой как smtp и пароль пользователя , но до сих пор не работает так, пожалуйста, дайте мне правильное решение или код, работающий в реальном сервере

это ошибка

2016-07-07 17:23:09 SMTP ERROR: Failed to connect to server: Network is unreachable (101) 2016-07-07 17:23:09 SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting Message could not be sent.Mailer Error: SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

+0

в .ini настройка не имеет значения. phpmailer не использует их. вам нужно проверить, доступен ли сервер gmail с компьютера, на котором вы тестируете это. –

+0

Добавьте свой phpmailer errorinfo к вашему вопросу. – Progrock

+0

Смотрите: http://stackoverflow.com/questions/3675897/how-to-check-by-php-if-my-script-is-connecting-to-smtp-server – Progrock

ответ

1

, когда вы в местных в то время smtp.gmail.com свою работу, но и в прямом эфире Вам нужно адрес сервер хоста, как mail.servername.com

0

вы должны прежде всего активировать Gmail принимающей незащищенные у приложений