Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Здравствуйте!
Никак не удается настроить отправку писем. При обращении к роуту выдает ошибку
"Expected response code 250 but got code "530", with message "530 5.7.1 Authentication required\r\n"
Вот листинг.
Код app/Mail/DemoEmail.php
<?php
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
class DemoEmail extends Mailable
{
use Queueable, SerializesModels;
/**
* The demo object instance.
*
* @var Demo
*/
public $demo;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct($demo)
{
$this->demo = $demo;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->from('sender@example.com')
->view('mails.demo')
->text('mails.demo_plain')
->with(
[
'testVarOne' => '1',
'testVarTwo' => '2',
])
->attach(public_path('/images').'/demo.jpg', [
'as' => 'demo.jpg',
'mime' => 'image/jpeg',
]);
}
}
Контроллер app/Http/Controllers/MailController.php
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use App\Mail\DemoEmail;
use Illuminate\Support\Facades\Mail;
class MailController extends Controller
{
public function send()
{
$objDemo = new \stdClass();
$objDemo->demo_one = 'Demo One Value';
$objDemo->demo_two = 'Demo Two Value';
$objDemo->sender = 'SenderUserName';
$objDemo->receiver = 'ReceiverUserName';
Mail::to("narzantaria@yandex.ru")->send(new DemoEmail($objDemo));
}
}
Шаблон resources/views/mails/demo.blade.php
Hello <i>{{ $demo->receiver }}</i>,
<p>This is a demo email for testing purposes! Also, it's the HTML version.</p>
<p><u>Demo object values:</u></p>
<div>
<p><b>Demo One:</b> {{ $demo->demo_one }}</p>
<p><b>Demo Two:</b> {{ $demo->demo_two }}</p>
</div>
<p><u>Values passed by With method:</u></p>
<div>
<p><b>testVarOne:</b> {{ $testVarOne }}</p>
<p><b>testVarTwo:</b> {{ $testVarTwo }}</p>
</div>
Thank You,
<br/>
<i>{{ $demo->sender }}</i>
Шаблон resources/views/mails/demo_plain.blade.php
Hello {{ $demo->receiver }},
This is a demo email for testing purposes! Also, it's the HTML version.
Demo object values:
Demo One: {{ $demo->demo_one }}
Demo Two: {{ $demo->demo_two }}
Values passed by With method:
testVarOne: {{ $testVarOne }}
testVarOne: {{ $testVarOne }}
Thank You,
{{ $demo->sender }}
config/mail.php
<?php
return [
'driver' => env('MAIL_DRIVER', 'smtp'),
'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
'port' => env('MAIL_PORT', 587),
'from' => [
'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'),
'name' => env('MAIL_FROM_NAME', 'Example'),
],
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'sendmail' => '/usr/sbin/sendmail -bs',
'markdown' => [
'theme' => 'default',
'paths' => [
resource_path('views/vendor/mail'),
],
],
'log_channel' => env('MAIL_LOG_CHANNEL'),
];
Раздел MAIL в .env без изменений
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
Роут:
Route::get('mail/send', 'MailController@send');
Буду очень благодарен за любую помощь. Честно говоря, мне уже не верится, что удастся выполнить эту задачу.
Спасибо за внимание:)
Не в сети
Не в сети
Authentication required
MAIL_USERNAME=null
MAIL_PASSWORD=null
У вас же конкретная ошибка, ошибка аутентификации. Пропишите параметры пользователя.
Не в сети
Спасибо! Все сработало!
Не в сети
Страницы 1