Estou tentando enviar um e-mail via GMail's SMTP server de uma página PHP, mas eu recebo este erro:
falha de autenticação [SMTP: O servidor SMTP não suporta autenticação (código: 250, resposta: mx.google.com ao seu serviço, [98.117.99.235] TAMANHO 35651584 8BITMIME STARTTLS ENHANCEDSTATUSCODES PIPELINING]]
Alguém pode ajudar? Aqui está o meu código:
<?php
require_once "Mail.php";
$from = "Sandra Sender <[email protected]>";
$to = "Ramona Recipient <[email protected]>";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
$host = "smtp.gmail.com";
$port = "587";
$username = "[email protected]";
$password = "testtest";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}
?>
O seu código não parece estar usando TLS (SSL), que é necessário para entregar correio ao Google (e usando as portas 465 ou 587).
Você pode fazer isso definindo
$host = "ssl://smtp.gmail.com";
O seu código parece suspeito como este exemplo que se refere a ssl:// no esquema de nomes de hosts.