Estoy tratando de enviar un correo electrónico a través del servidor SMTP de GMail desde una página PHP, pero aparece este error:
error de autenticación [SMTP: el servidor SMTP no admite autenticación (código: 250, respuesta: mx.google.com a su servicio, [98.117.99.235] TAMAÑO 35651584 8BITMIME STARTTLS MEJORADO CÓDIGOS DE ESTADO PIPELINING)]
¿Alguien puede ayudar? Aquí está mi 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>");
}
?>
Mail.php
?? ¿de dónde obtengo este archivo?myaccount
para nombre de usuario.Usando el correo Swift , es bastante fácil enviar un correo a través de las credenciales de Gmail:
fuente
Parece que su código no usa TLS (SSL), que es necesario para enviar el correo a Google (y usa los puertos 465 o 587) .
Puede hacer esto configurando
$host = "ssl://smtp.gmail.com";
Su código se parece sospechosamente a este ejemplo que se refiere a ssl: // en el esquema de nombre de host.
fuente
No recomiendo Pear Mail. No se ha actualizado desde 2010. También lea los archivos de origen; el código fuente está casi desactualizado, escrito en estilo PHP 4 y se han publicado muchos errores / errores (Google). Estoy usando Swift Mailer.
Swift Mailer se integra en cualquier aplicación web escrita en PHP 5, ofreciendo un enfoque flexible y elegante orientado a objetos para enviar correos electrónicos con una multitud de características.
Es un código abierto y gratuito que puede descargar Swift Mailer y cargar en su servidor. (La lista de funciones se copia del sitio web del propietario).
El ejemplo de trabajo de Gmail SSL / SMTP y Swift Mailer está aquí ...
Espero que esto ayude. Feliz codificación ... :)
fuente
fuente
SwiftMailer puede enviar correos electrónicos utilizando servidores externos.
Aquí hay un ejemplo que muestra cómo usar un servidor de Gmail:
fuente
El código que figura en la pregunta necesita dos cambios.
Se requiere el puerto 465 para una conexión SSL.
fuente
Enviar correo usando la biblioteca phpMailer a través de Gmail Descargue los archivos de la biblioteca de Github
fuente
Tuve este problema también. Establecí la configuración correcta y habilité aplicaciones menos seguras, pero aún así no funcionó. Finalmente, habilité este https://accounts.google.com/UnlockCaptcha , y funcionó para mí. Espero que esto ayude a alguien.
fuente
Gmail requiere el puerto 465, y también es el código de phpmailer :)
fuente
Para instalar Mail.php de PEAR en Ubuntu, ejecute el siguiente conjunto de comandos:
fuente
Tengo una solución para cuentas GSuite que no tiene el sufijo "@ gmail.com". También creo que funcionará para cuentas GSuite con @ gmail.com pero no lo he probado. Primero debe tener los privilegios para cambiar la opción "aplicación menos segura" para su cuenta GSuite. Si tiene los privilegios (puede verificar la configuración de la cuenta-> seguridad), entonces debe desactivar "autenticación de factor de dos pasos", vaya al final de la página y establezca "sí" para permitir aplicaciones menos seguras. Eso es todo. Si no tiene privilegios para cambiar esas opciones, la solución para este hilo no funcionará. Consulte https://support.google.com/a/answer/6260879?hl=es para realizar cambios en la opción "permitir menos ...".
fuente
Intenté la sugerencia ofrecida por @shasi kanth, pero no funcionó. Leí la documentación y hay pocos cambios realizados. Así que logré enviar correo a través de Gmail usando este código, donde vendor / autoload.php es obtenido por compositor con compositor que requiere "swiftmailer / swiftmailer: ^ 6.0":
fuente
Conjunto
Además, vea si el puerto 25 funciona.
fuente