Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

darknightsky's avatar

Laravel Auth Password Reset email never sent

I have been trying to get emails to send in Laravel for the past day without success. I have been testing locally using homestead and on a live server environment with no luck.

I have remove email settings from the .env file. and directly added the settings in my config/mail file.

so far I have tried the office 365 settings, gmail and finally maligun, no of which send an email.

my settings are below.

  'driver' => env('MAIL_DRIVER', 'mailgun'),
    'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
    'port' => env('MAIL_PORT', 587),
  'from' => [
        'address' => env('MAIL_FROM_ADDRESS', 'postmaster@sandbox********099b827475b585029.mailgun.org'),
        'name' => env('MAIL_FROM_NAME', 'Test account'),
    ],
    'encryption' => env('MAIL_ENCRYPTION', 'tls'),
    'username' => env('postmaster@sandbox****************099b827475b585029.mailgun.org'),
    'password' => env('********************'),

I complete the password reset process via password/reset and it says the password reset link was sent successfully but it is never sent, the mailgun logs confirm no email was sent, the token is updated in the password_reset table

I ssh'd onto homestead and tested sending a email via mailgun using curl and this works.

if I set mail driver to SMTP I still get the same issue.

when setting the drive to 'log' the log files shows the email template etc.

any help would be appreciated.

thanks

0 likes
3 replies
s4muel's avatar

when using MAIL_DRIVER='mailgun', try setting also these in the config/services.php:

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

check your mailgun dashboard for the values

Please or to participate in this conversation.