Phpmailer usando smtp con Gmail no funciona - tiempo de espera de conexión

He mirado en los siguientes enlaces:

phpmailer enviar gmail smtp timeout

enviar correo electrónico utilizando el servidor SMTP de Gmail a través de PHP Mailer

http://uly.me/phpmailer-and-gmail-smtp/

... e intenté implementar para mí una combinación de esos sin embargo ... la mayoría de las veces envía este mensaje ...

Mensaje no pudo ser enviado.

Error de la aplicación de correo: SMTP connect () falló.

Sin embargo, hubo un momento en el que envió esto cuando experimenté entre "tls" y "ssl" ...

ERROR SMTP: Error al conectarse al servidor: Tiempo de espera agotado para la conexión (110) Error en la conexión SMTP (). Mensaje no pudo ser enviado.

Error de la aplicación de correo: SMTP connect () falló.

Mi código está adjunto ... ¿De alguna manera me perdí algo? Le pregunté al servicio de alojamiento web si estaban bloqueando y les di una plantilla de mi código; dijeron que el servidor permite conexiones a SMTP de Gmail.

    require_once("class.phpmailer.php");
    $mail = new PHPMailer();
    $mail -> IsSMTP();
    $mail -> SMTPDebug = 2;
    $mail -> SMTPAuth = 'true';
    $mail -> SMTPSecure = 'tls';
    $mail -> SMTPKeepAlive = true;
    $mail -> Host = 'smtp.gmail.com';
    $mail -> Port = 587;
    $mail -> IsHTML(true); 

    $mail -> Username = "[email protected]";
    $mail -> Password = "mypassword";
    $mail -> SingleTo = true; 

    $to = xxx;                           
    $from = xxx;
    $fromname = xxx;
    $subject = xxx;
    $message = xxx
    $headers = "From: $from\n";
    $headers .= "MIME-Version: 1.0\n";
    $headers .= "Content-type: text/html; charset=iso-8859-1\n";

    $mail -> From = $from;
    $mail -> FromName = $fromname;
    $mail -> AddAddress($to);

    $mail -> Subject = $subject;
    $mail -> Body    = $message;

    if(!$mail -> Send()){
        echo "Message could not be sent. <p>";
        echo "Mailer Error: " . $mail-> ErrorInfo;
        exit;
    }

Respuestas a la pregunta(8)

Su respuesta a la pregunta