Laravel 5.4 отправляет почту с ошибкой вложения - используя Mailtrap.ioPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Laravel 5.4 отправляет почту с ошибкой вложения - используя Mailtrap.io

Сообщение Anonymous »

Я пытаюсь отправить электронное письмо с вложением в среде разработки, используя для этого 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('welcome@dprefumry.com')
->subject($mailContent->subject)
->view('emails.send')
->attach($mailContent->attachment, [
'as' => str_slug($mailContent->subject),
'mime' => File::mimeType($mailContent->attachment)
])
->with(['mailContent' => $mailContent]);
}
И в файле маршруты/web.php:

Код: Выделить всё

Route::get('/', function() {
Mail::to('maddy@example.com')
->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('maddy@example.com')->subject($mailContent->subject);
$mail->from('welcome@example.com');
$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:

Я просто поигрался с загрузкой файлов и их сохранением.. А потом назвал этот файл как вложение и пришел к следующему выводу:

1-е. Если я загружу файл размером < 5 МБ, он будет отправлен в виде вложения без каких-либо проблем.

2-е. Если я загружу файл размером > 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


Пожалуйста, помогите мне с этим. Любая помощь приветствуется.

Подробнее здесь: https://stackoverflow.com/questions/444 ... ailtrap-io
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»