Gaurav Mehta
Gaurav Mehta

Reputation: 1153

Unable to send email from Laravel 5.2 using MailGun

I am trying to use the built-in driver for Mailgun to send email. Here's what I have done so far.

Installed Guzzle driver.

Added the following to my config\services.php

'mailgun' => [
    'domain' => env('sandbox54d5c9ed96434d689f971fd3.mailgun.org'),
    'secret' => env('key-e800aa77cbda23ee8471dd5e'),
],

In my config\mail.php I have added 'driver' => env('MAIL_DRIVER', 'mailgun'),

However, now if I try to do forget password. It says we have sent an email but I don't get anything.

The domain is my sandbox domain name and secret is the API Key.

Am I missing something here or doing something wrong? How can I debug if there are some issues?

Upvotes: 1

Views: 2027

Answers (1)

Pieter P.
Pieter P.

Reputation: 109

Sorry for this late answer, just found your question while googling for something different and hope not too late. If you want to save the credentials in .env, do this in your config\services.php:

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

Then in your .env file

MAILGUN_DOMAIN=sandbox54d5c9ed96434d689f971fd3.mailgun.org
MAILGUN_SECRET=key-e800aa77cbda23ee8471dd5e

In the config\services.php you just tell the key on .env file with: 'setting' => env('KEY_IN_ENV') Laravel will then check if the key found and get the value from .env file: KEY_IN_ENV = setting_value

Or simply like this in your config\services.php only:

'mailgun' => [
    'domain' => 'sandbox54d5c9ed96434d689f971fd3.mailgun.org',
    'secret' => 'key-e800aa77cbda23ee8471dd5e',
],

Good for you.

Upvotes: 2

Related Questions