Laravel 5.1 Максимальный размер изображения - PullRequest
0 голосов
/ 03 декабря 2018

Я использую Laravel 5.1 и php 7. Я пытаюсь осуществить загрузку изображений.Большие изображения не удается загрузить.(Появляется белый экран без сообщения об ошибке) Я протестировал его локально на xampp и в веб-пространстве.С небольшими изображениями это работает.Сбой изображения с размером 2,5 МБ, но максимальное значение 5000.

Мой контроллер:

public function fileUpload(Request $request)

{

      if($request->hasfile('filename'))
    {
        foreach($request->file('filename') as $image)
        {

            $targetFolder = public_path().'/images/';

            $name=$image->getClientOriginalName();
            $extension = $image->getClientOriginalExtension(); // add

            $picture = sha1($name . time()) . '.' . $extension; //add

            $image->move($targetFolder, $picture);

            $image = \Intervention\Image\Facades\Image::make(sprintf('images/%s', $picture))->resize(640, null, function ($constraint) {
                $constraint->aspectRatio();
            });
            $image->sharpen(10);
            $image->save();

            $form= new Image();
            $form->filename = $picture;
            $form->appartement_id = $appartement->id;
            $form->save();
        }
    }

    return back()->with('success', 'Your images has been successfully');

}

Вопросы:

  1. Почему нет ошибкисообщение?Только белый экран появляется, когда не удается загрузить.(Может быть, в одном из конфигурационных файлов laravel необходимо выполнить необходимую настройку?
  2. Почему он работает с изображениями меньшего размера? Где в xampp и в веб-пространстве необходима конфигурация?

Согласно моему файлу phpinfo, у меня определены следующие значения: (Local on xampp)

post_max_size = 8M
upload_max_filesize = 10M

В моем веб-пространстве каждый равен 200M. Эти значения должны быть достаточно высокими?

Ответы [ 3 ]

0 голосов
/ 03 декабря 2018

Поскольку он работает с небольшими файлами, я предполагаю, что это связано с вашей конфигурацией PHP, а не с вашим кодом.Вы должны убедиться, что оба эти параметра в php.ini достаточно большие (вы можете изменить значения в соответствии со своими потребностями).

post_max_size = 512M
upload_max_filesize = 512M

Вы можете запустить функцию phpinfo (), чтобы подтвердить текущие настройки дляваш сервер и убедитесь, что ваши изменения были успешными.

0 голосов
/ 03 декабря 2018

Сначала вы должны увеличить значения в php.ini в соответствии с вашей рекомендацией, например:

upload_max_filesize = 24M 
post_max_size = 32M

В проверке Laravel files, size corresponds to the file size in kilobytes. проверка ссылка

попробуй в контроллере

return redirect()->back()->with('success', ['your message,here']);   
0 голосов
/ 03 декабря 2018
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...