SMTP Relay Gmail Envío desde App Laravel 10: Solucionado

Qué es SMTP Relay

El término SMTP Relay se refiere a un método de transferencia de correo electrónico de un servidor a otro. En términos de desarrollo de aplicaciones, se puede usar un servidor SMTP para enviar mensajes de correo electrónico desde las aplicaciones. Gmail SMTP relay es uno de los servicios de retransmisión SMTP más utilizados en el mundo.

Laravel y el uso de SMTP Relay

El popular framework PHP Laravel tiene excelentes capacidades para enviar correos electrónicos a través de diferentes servicios de correo. Aprenderemos cómo configurar SMTP Relay para Gmail en Laravel 10 y cómo enviar mensajes de correo electrónico desde tu app Laravel utilizando este procedimiento.

Configurando Laravel .ENV para Gmail SMTP

La primera tarea a realizar es configurar las variables de entorno para la autenticación SMTP en nuestro archivo .ENV de Laravel. Aquí está la configuración básica:

MAIL_MAILER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=your-gmail-account
MAIL_PASSWORD=your-gmail-password
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=your-gmail-account
MAIL_FROM_NAME="Your Name"

Nota: Asegúrate de reemplazar ‘your-gmail-account’ y ‘your-gmail-password’ con tus credenciales de correo de Gmail.

Enviar correo desde una aplicación Laravel usando el servicio GMail SMTP

Ahora que tenemos nuestra configuración de .ENV completa, podemos enviar correos en Laravel. Aquí está un ejemplo de un controlador de envío de correo:

namespace AppHttpControllers;

use IlluminateHttpRequest;
use IlluminateSupportFacadesMail;
use AppMailTestEmail;

class EmailController extends Controller
{
    public function send()
    {
        $data = ['name' => 'John Doe', 'body' => 'This is for testing email using smtp'];
        Mail::to('[email protected]')->send(new TestEmail($data));

        return 'Email sent successfully';
    }
}

La clase TestEmail en nuestro ejemplo se ocupará de generar el correo HTML para nosotros. Aquí hay un ejemplo del archivo TestEmail:

namespace AppMail;

use IlluminateBusQueueable;
use IlluminateContractsQueueShouldQueue;
use IlluminateMailMailable;
use IlluminateQueueSerializesModels;

class TestEmail extends Mailable
{
    use Queueable, SerializesModels;
    public $data;

    public function __construct($data)
    {
        $this->data = $data;
    }

    public function build()
    {
        return $this->subject('Test Email Laravel 10')->view('emails.TestEmail');
    }
}

Puntos clave a tener en cuenta al utilizar el SMTP Relay de Gmail

El SMTP Relay de Gmail es un servicio sólido y confiable para la entrega de correo electrónico. Sin embargo, hay algunas cosas a tomar en cuenta:

1) Gmail SMTP tiene ciertos límites de uso. Por lo tanto, si planeas enviar grandes volúmenes de correos electrónicos, puede que necesites considerar algún otro servicio de correo SMTP.

2) La seguridad es una preocupación siempre presente. Como desarrollador, siempre debes proteger tus credenciales SMTP y no exponerlas en tu código fuente.

3) Asegúrate que tienes acceso de “aplicaciones menos seguras” habilitado en tu cuenta de Gmail. Sin que esté habilitado, el servicio de Gmail bloqueará tus intentos de enviar correo mediante SMTP.

En resumen, Laravel 10 y Gmail SMTP Relay es una combinación ideal para implementar el envío de correos electrónicos en tu aplicación con poco esfuerzo y alta fiabilidad.

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad