У меня проблема с nginx. У меня есть сайт, который позволяет загружать большие файлы (например, 500 МБ). Мой сайт запускается в докере. Иногда (один раз в месяц) у меня была ошибка, которая выглядела так:
*70702337 pwritev() "/var/cache/nginx/fastcgi_temp/3/57/0001589573" has written only 4856 of 8184 while reading upstream, client: 172.26.141.1, server: 172.26.141.15, request: "GET /download/4383b6219892972184eb11a098a8d045ac1e53a1 HTTP/1.0", upstream: "fastcgi://172.26.141.2:9000", host: mydomian.com
Это приводит к тому, что страница возвращает ошибку 502 неверный шлюз и необходимо перезапустить докер-контейнеры.
Моя конфигурация сервера PHP-fpm + fastcgi
Я нашел решение, которое предлагает установить параметр fastcgi_buffering = off;
Но я не знаю, что это хорошее решение для веб-сайта, позволяющее загружать файлы размером по 500 МБ каждый.
Знаете ли вы, что я должен делать?
В моей конфигурации nginx есть строка client_body_buffer_size 64K;
- может быть, это неправильное значение?