Я получаю эту ошибку InvalidArgumentException Не удалось разрешить драйвер NULL для [Illuminate \ Mail \ TransportManager] на Laravel 5.6, и у меня возникла эта проблема как на локальном компьютере, так и на тестовом веб-сайте в Интернете.Я начал использовать только gmail с smtp, и у меня возникли некоторые проблемы со входом в систему, поэтому я наткнулся на mailgun и настроил все с этим.У меня настроен файл .env (на тестовом веб-сайте драйвер корректно отображается как mailgun)
MAIL_DRIVER=log
MAIL_HOST=smtp.mailgun.org
MAIL_PORT=587
MAIL_USERNAME=USERNAME
MAIL_PASSWORD=PWD
MAIL_ENCRYPTION=tls
Моя конфигурация / электронная почта следующие:
'mailgun' => [
'domain' => 'domain',
'secret' => 'key-xxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
],
'host' => env('smtp.mailgun.org', 'smtp.mailgun.org'),
'port' => env('587', 587),
'from' => [
'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'),
'name' => env('MAIL_FROM_NAME', 'Example'),
],
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('uname'),
'password' => env('pwd'),
'sendmail' => '/usr/sbin/sendmail -bs',
'markdown' => [
'theme' => 'default',
'paths' => [
resource_path('views/vendor/mail'),
],
],
];
config / services
'mailgun' => [
'domain' => env('domain'),
'secret' => env('key-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'),
],
'ses' => [
'key' => env('SES_KEY'),
'secret' => env('SES_SECRET'),
'region' => 'us-east-1',
],
'sparkpost' => [
'secret' => env('SPARKPOST_SECRET'),
],
'stripe' => [
'model' => App\User::class,
'key' => env('STRIPE_KEY'),
'secret' => env('STRIPE_SECRET'),
],
];
С тех пор, как я добавил этот материал, у меня возникла проблема.Я получаю вывод в файл журнала и, как я упоминал ранее, при использовании SMTP Gmail я не получил эту ошибку драйвера.Я попробовал документы Laravel, используя Maiables, и это не помогло.Я использовал эту ссылку https://scotch.io/tutorials/easy-and-fast-emails-with-laravel-5-3-mailables в качестве руководства, и даже тогда я получил ту же ошибку.Я сделал дд на маршруте
Route::get('test', function(){
dd(Config::get("mail"));
Mail::raw('Sending emails with Mailgun and Laravel is easy!', function($message)
{dd(Config::get("mail"));
$message->to('email@email.email');
});
});
со следующими результатами
array:9 [▼
"mailgun" => array:2 [▼
"domain" => "domain"
"secret" => "key-xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
]
"host" => "smtp.mailgun.org"
"port" => 587
"from" => array:2 [▼
"address" => "hello@example.com"
"name" => "Example"
]
"encryption" => "tls"
"username" => null
"password" => null
"sendmail" => "/usr/sbin/sendmail -bs"
"markdown" => array:2 [▼
"theme" => "default"
"paths" => array:1 [▶]
]
]
По общему признанию, я новичок в Laravel, поэтому я очень хотел попытаться решить эту проблему, так как этолучший способ учиться, но даже с Google я лично не нашел много помощи, поэтому я обращаюсь к некоторым из экспертов здесь на SO.Заранее спасибо.