Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

729
Vistas
enviar correo en Laravel 5.4 usando Mailgun obtener el código de error "401 NO AUTORIZADO" respuesta: Prohibido "

Estoy tratando de enviar correo en el proyecto Laravel 5.4 con Mailgun. Creo que puse la configuración correctamente. Pero, recibí este mensaje de error como

ClientException en RequestException.php línea 111: Error del cliente: POST https://api.mailgun.net/v3/sandboxfeb88d58f18841738b2fc81d7cbc7631.mailgun.org/messages.mime > resultó en una respuesta 401 UNAUTHORIZED : Prohibido

Aquí está mi configuración:

en archivo .env

 MAIL_DRIVER=mailgun MAILGUN_DOMAIN=sandboxfeb88d58f18841738b2fc81d7cbc7631.mailgun.org MAILGUN_SECRET=pubkey-1767e**********

en el archivo mail.php

 'driver' => env('MAIL_DRIVER', 'smtp'), 'host' => env('MAIL_HOST', 'smtp.mailgun.org'), 'port' => env('MAIL_PORT', 587), 'from' => [ 'address' => env('MAIL_FROM_ADDRESS', 'richi.htoo@gmail.com'), 'name' => env('MAIL_FROM_NAME', 'Richi Htoo'), ],

en el archivo services.php

 'mailgun' => [ 'domain' => env('MAILGUN_DOMAIN'), 'secret' => env('MAILGUN_SECRET'), ],

y escribí el código de envío de correo en la ruta predeterminada, como

 Route::get('/', function () { //return view('welcome'); $data = [ 'title' => 'Hi student I hope you like the course', 'content' => 'This laravel course was created with a lot of love and dedication for you' ]; Mail::send('emails.test', $data, function($message){ $message->to('white.nuzzle@gmail.com', 'White Nuzzle')->subject('Hello student how are you?'); }); });

Y también instalé Laravel Package "guzzlehttp/guzzle" versión 6.2 para enviar correo.

Pero cuando llamo a esa ruta de inicio predeterminada, recibo un mensaje de error como mencioné anteriormente.

No puedo encontrar ninguna solución para mi error en ningún lugar, incluido este foro "stackoverflow.com".

¿Alguien puede ayudarme por favor?

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Ok, lo encontré, en el archivo "vendor\laravel\framework\src\Illuminate\Mail\Transport\MailgunTransport.php", el punto final utilizado es el de EE. UU.

Como se dice en la documentación, https://documentation.mailgun.com/en/latest/api-intro.html#mailgun-regions , tiene un punto final para EE. UU. y la UE.

Si eres europeo, debes usar "api.eu.mailgun.net" o obtienes un 401.

Simplemente cambie el punto final: Laravel es poderoso y piensan en eso. Puede agregar una clave de 'punto final' a la entrada config/services.php/mailgun.

over 4 years ago · Santiago Trujillo Denunciar

0

Francamente, fue todo un calvario, hice que la caja de arena funcionara de la siguiente manera

  1. Destinatario autorizado agregado: aparentemente, el sandbox no puede enviar correos electrónicos a nadie, debe agregarlo como destinatario autorizado.
  2. Use las credenciales adecuadas en el archivo .env que agregó MAILGUN_DOMAIN y MAILGUN_SECRET también, ya que services.php los usa. Recuerde que MAILGUN_SECRET es la clave privada y comienza con key- , no use la clave pública aquí
  3. Ponga MAIL_DRIVER=mailgun MAIL_HOST=smtp.mailgun.org MAIL_PORT=587 MAIL_USERNAME=postmaster@sandboxcc*****************.mailgun.org MAIL_PASSWORD=****************** MAIL_ENCRYPTION=tls
  4. !!!¡¡¡¡LO MÁS IMPORTANTE!!!! REINICIA TU SERVIDOR para cargar el nuevo archivo .env .
over 4 years ago · Santiago Trujillo Denunciar

0

Si no está utilizando la región Mailgun de Estados Unidos, puede definir el punto final de su región en el archivo de configuración de servicios:

 'mailgun' => [ 'domain' => env('MAILGUN_DOMAIN'), 'secret' => env('MAILGUN_SECRET'), 'endpoint' => env('MAILGUN_ENDPOINT', 'api.eu.mailgun.net'), ],

Alternativamente, se puede definir MAILGUN_ENDPOINT en el archivo .env:

 MAILGUN_ENDPOINT="api.eu.mailgun.net"
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda