загрузка файлов размером более 1 МБ = сброс соединения


8

Я использую nginx на внешнем интерфейсе в качестве «кэша прокси» и apache на внутреннем сервере, я установил следующие настройки PHP:

error_log = /var/www/site1/php_error.log
error_reporting = 22527
file_uploads = On
log_errors = On
max_execution_time = 0
max_file_uploads = 20
max_input_time = -1
memory_limit = 512M
post_max_size = 0
upload_max_filesize = 1000M

В чем проблема? Загрузка файлов размером менее 1 МБ успешна, но все, что больше этого, выводит Google Chrome:

Error 101 (net::ERR_CONNECTION_RESET): The connection was reset.

Я уже проверил файл журнала ошибок, но он не существует в каталоге. Я также проверил, /var/log/httpd/error_logно нет проблем с загрузкой. Я не знаю ничего другого, что могло бы вызвать проблему, поэтому я протянул руку помощи. Спасибо!


Вы имели в виду больше, чем 1 ГБ? Посмотрите на заголовок вашего вопроса!
Илья Ростовцев

э-э ... я имел в виду то, что имел в виду
Юрген Павел

хм .. хорошо, прости. Вы только что настроили PHP, upload_max_filesize = 1000M и я бы не подумал, что загрузка 1 МБ может когда-нибудь закончиться неудачей! Просто хотел перепроверить.
Илья Ростовцев

Ответы:


10

Я обнаружил проблему, проблема была с

В nginx.conf:

http {
    client_max_body_size 0;
}

Я настроен client_max_body_sizeна 0. по умолчанию было 1M.


Спасибо. Небольшое объяснение: в документе nginx сказано: «Если заявленная длина контента больше этого размера, то клиент получает код ошибки HTTP 413 (« Запросить объект слишком большой »). Следует отметить, что веб-браузеры обычно не знать, как правильно отображать такую ​​ошибку HTTP. " wiki.nginx.org/HttpCoreModule Вот почему, вероятно, сообщение об ошибке не является точным.
Федир Рыхтик,

Я мог бы опоздать на вечеринку, но есть ли что-то подобное, что будет работать для Apache?
Генрирайт

0

Почему есть post_max_size = 0?

Это должно быть по крайней мере 1000Mв вашем случае, так как большинство загрузок являются запросами POST.


4
разве 0 не безгранично?
Юрген Пауль
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.