В представлении в laravel у меня есть форма, которая загружает файл:
<form id="file-submit" enctype="multipart/form-data" method="post" action="store">
{{ Form::token() }}
<input id="filename" name="filename" type="file" />
<input type="submit" value="Upload file" id="file-save" class="btn btn-create" />
</form>
В файле маршрута у меня есть:
Route::post('/store', 'MyController@upload');
Там, в методе, я обрабатываю данные файла.
Это работает на моем локальном сервере, я загружаю его в производство, поэтому это работает, когда я загружаю файлы вокруг 5kb, но если я попытаюсь загрузить большой файл, около 4 МБ он сломается с этой ошибкой:
production.ERROR: exception 'Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException' in <laravel_instance>/protected/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php:210
У меня одинаковые настройки памяти в файле php.ini(memory_limit, post_max_size, excecution_time, max_input_time, upload_max_size)
благодаря
Я подозреваю, что это связано с тем, что вы вручную создаете форму.
Попробуйте сделать это следующим образом:
Маршрут:
Route::post('/store', [
'as' => 'store',
'uses' => 'MyController@upload'
]);
Форма:
{{Form::open([
'id' => 'file-submit',
'enctype' => 'multipart/form-data',
'action' => 'store'
])}}
{{Form::file('filename')}}
{{Form::submit()}}
{{Form::close()}}