Я пытаюсь отправить электронное письмо с вложением в среде разработки — с помощью mailtrap
для того же. Это вложение может быть любого типа файла. Но я всегда получаю сообщение об ошибке:
Expected response code 250 but got code "502", with message "502 5.5.2 Error: command not recognized
Я не знаю, где и какую ошибку я делаю, но мне не удается достичь желаемого результата, то есть отправить письмо с приложением.
Файл вложения находится внутри public/email-attachments/
папка
Вот исходный код, который я пробовал до сих пор:
/**
* Build the message.
*
* @return $this
*/
public function build()
{
$mailContent = cache('allEmailContents')->first();
return $this->from('[email protected]')
->subject($mailContent->subject)
->view('emails.send')
->attach($mailContent->attachment, [
'as' => str_slug($mailContent->subject),
'mime' => File::mimeType($mailContent->attachment)
])
->with(['mailContent' => $mailContent]);
}
И в routes/web.php
файл:
Route::get('/', function() {
Mail::to('[email protected]')
->send(new SendWelcomeEmail());
return view('welcome');
});
Я также попробовал старый способ отправки почты безуспешно:
Route::get('/', function() {
$mailContent = cache('allEmailContents')->first();
$data = $mailContent->toArray();
Mail::send('emails.send', $data, function($mail) use ($mailContent, $data) {
$mail->to('[email protected]')->subject($mailContent->subject);
$mail->from('[email protected]');
$mail->attach($mailContent->attachment, [
'as' => str_slug($mailContent->subject),
'mime' => File::mimeType($mailContent->attachment)
])
});
return view('welcome');
});
ОБНОВЛЕНИЕ 1:
Вот .env
файл:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=49xxxxxxx70
MAIL_PASSWORD=1fxxxxxxxxxx1e
MAIL_ENCRYPTION=null
ОБНОВЛЕНИЕ 2:
Я просто поиграл с загрузкой файлов и их сохранением … А потом назвал этот файл в качестве вложения и пришел к следующему выводу:
Первый. Если я загружу файл < 5 МБ, файл отправляется в виде вложения без каких-либо проблем.
Второй. Если я загружаю файл> 5 МБ, я получаю следующую ошибку:
Expected response code 250 but got code "552",
with message "552 5.7.0 Message exceeded max message size of 5242880 bytes"
На всякий случай, если ссылка нужна для php.ini
У меня есть следующий конфиг в php.ini
post_max_size = 20000M
upload_max_filesize = 10000M
max_file_uploads = 20
max_execution_time = 600000
Пожалуйста, помогите мне с этим. Любая помощь высоко ценится.
Задача ещё не решена.
Других решений пока нет …