Ошибка сброса соединения при загрузке нескольких файлов - PullRequest
0 голосов
/ 29 августа 2018


У меня проблема с загрузкой нескольких файлов в php. Я установил настройку php.ini в файле .htaccess

php upload_max_filesize 1024M
php post_max_size 1024M
php max_execution_time 120
php max_input_time 120
php max_file_uploads 40

Таким образом, когда я загружаю изображения размером около 40M, сервер отвечает с ошибкой статуса или установкой соединения вместо того, чтобы загружать изображения в течение 1 минуты. Если я загружаю чуть меньше 40M, то все работает нормально. Есть ли другие настройки, которые мне нужно делать. Как я могу решить эту проблему.

1 Ответ

0 голосов
/ 29 августа 2018

Скорее всего, вы работаете против часов или у вас конфликтующие настройки, но трудно определить количество предоставленной вами информации.

Даже если вы настроили свой экземпляр PHP на прием до 1024M (кстати, вы уверены, что вам это нужно?), Вам нужно учесть намного больше:

php max_execution_time 120
php max_input_time 120

Вышеуказанное означает, что что бы ни случилось, ваши экземпляры PHP будут остановлены через 120 секунд. Может случиться так, что вы сможете загрузить почти 40M менее чем за 120 секунд.

Теперь, даже если у вас была скорость соединения, позволяющая загружать более 40 МБ менее чем за 120 секунд, есть и другие параметры, которые могут быть противоречивыми, поскольку приведенные выше применимы только к процессу PHP.

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

...