У меня общая проблема в PHP: мой массив $ _FILES пуст, если файлы слишком большие.
php.ini:
max_execution_time = 300000 max_input_time = 600000000 memory_limit = 5100MB post_max_size = 5000MB upload_max_filesize = 5000MB
Файл :
Trouve.tar : 910Mo
Значения конфигурации огромны, но я хочу быть уверенным, что у сценария есть время и память для загрузки.
Таким образом, разрешенный размер больше размера файла, но у меня такая же ошибка, как у других людей (например, проблема с загрузкой изображений с загрузкой файла php для примера)
Я пропустил некоторые настройки конфигурации?
Вместо МБ используют М
memory_limit = 5100M post_max_size = 5000M upload_max_filesize = 5000M
Проблема заключается в том, что ваш post_max_size имеет тот же размер, что и upload_max_filesize, что приведет к тому, что массив $ _FILES (и $ _POST) будет пустым. Если вы превысите ограничение на post_max_size, массив $ _FILES больше не будет пустым.
EDIT: Не знаю, почему отрицательный голос. Хотя это может и не быть применимо именно в этом случае, стоит упомянуть. Это именно то, что php.net говорит: http://www.php.net/manual/en/ini.core.php#ini.post-max-size .
Если размер пост-данных больше, чем post_max_size, суперглавы $ _POST и $ _FILES пустые.
Проверьте ваш upload_limit
в настройках php.ini.
В вашем теге html-формы не забудьте поставить это: enctype="multipart/form-data"
Проверьте настройки веб-сервера в дополнение к конфигурации php.ini.
Например, вам, вероятно, придется увеличить LimitRequestBody
если вы используете Apache или client_max_body_size
если используете nginx.
Когда HTTP-запрос больше, чем предел, принятый веб-сервером, он возвращает ответ HTTP со статусом: 413 Request Entity Too Large.