SwiftMailer transporte SMTP rechazar dirección IP local
-
09-10-2019 - |
Pregunta
Estoy tratando de enviar un correo electrónico utilizando el Swift_SmtpTransport pero estoy consiguiendo el error siguiente:
501 5.5.2 <[:: 1]>: comando HELO rechazada: la dirección IP no válida
El servidor SMTP es un servidor remoto y funciona de mi servidor de producción, pero no de mi máquina de desarrollo, que se ejecuta OS X.
Asimismo, no se molestó en lanzar una excepción, en vez de eso me obligó a usar un plugin de registrador para averiguar por qué no estaba funcionando.
¿Qué puedo hacer para hacer que use una dirección IP real?
Solución
he hecho un poco a hurgar en el código y lo encontró.
Al configurar el transporte SMTP, es necesario llamar a setLocalDomain (). Uso de PHP en OS X, el valor predeterminado es ":: 1", que es rechazado por el servidor remoto. Acabo de añadir una línea en la configuración de mi desarrollo conjunto a lo siguiente:
$transport = Swift_SmtpTransport::newInstance('mail.pantsburger.com', 587);
if (SITE_ENV == SITE_ENV_DEV) {
$transport->setLocalDomain('[127.0.0.1]');
}
Creo que esto es también un error con SwiftMailer -. Lo que realmente debe ser una excepción para algo como esto, en lugar de limitarse a enumerar cada destinatario como "fallido"