Занимаюсь переносов сайтов на новый сервер, обнаружил при просмотре предупреждение “An upstream response is buffered to a temporary file”
Такое сообщение возникает часто на не настроенном nginx – основной момент тут в том что nginx не смог принять весь обьем информации от бэкенда.
Решается просто – необходимо в основном конфиге nginx прописать размеры буферов для работы fcgi и объем буфера для чтения тела запроса клиента:
1 2 3 4 5 6 7 8 9 |
client_body_buffer_size 32k; proxy_buffer_size 128k; proxy_buffers 4 256k; proxy_busy_buffers_size 256k; fastcgi_buffer_size 128k; fastcgi_buffers 4 256k; fastcgi_busy_buffers_size 256k; |
При необходимости эти параметры меняются а настройках конкретного домена.
Не получается побороть эту ошибку.
Для домена в конфиг nginx прописал настройки:
location @php {
fastcgi_index index.php;
fastcgi_param PHP_ADMIN_VALUE “sendmail_path = /usr/sbin/sendmail -t -i -f webmaster@example.com“;
fastcgi_pass unix:/var/www/php-fpm/admin.sock;
fastcgi_split_path_info ^((?U).+\.ph(?:p\d*|tml))(/?.+)$;
try_files $uri =404;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
include fastcgi_params;
}
Но ошибки так и продолжают появляться для одной из страниц, на которой много комментариев, сайт на WordPress.
Как исправить?
Эммм, тут как бы мало инфы – не понятно в какой момент эта ошибка и что вы делаете, если это проблема от php-fpm – то надо бы дописать еще в конфиг
fastcgi_buffer_size 128k;
ну и желательно прописать парметры буфферов для проксирования. Ну и пока не понятно от чего куда и как – то прописать пааметры стоит в разделе http а не server или location – а дальше по ситуации – если прописывание fastcgi_ и proxy_ в раздел http помогло – тогда уже убирать лишнее и переносить в server или location.