The relationship between directive "fastcgi_busy_buffers_size" and other two directives is not recorded clearly.
|Reported by:||Owned by:|
|uname -a:||Linux xlarge 4.15.0-72-generic #81-Ubuntu SMP Tue Nov 26 12:20:02 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux|
nginx version: nginx/1.18.0
built by gcc 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
configure arguments: --prefix=/usr/local/nginx --with-pcre=/root/Downloads/pcre-8.43
In the document of directive "fastcgi_busy_buffers_size", it says that "By default, size is limited by the size of two buffers set by the fastcgi_buffer_size and fastcgi_buffers directives". Indeed, based on the handling logic in src/http/modules/ngx_http_fastcgi_module.c, the value of "fastcgi_busy_buffers_size" must be equal or greater than the maximum of the value of "fastcgi_buffer_size" and "fastcgi_buffers" size. So it is recommended to add this information in the doc of "fastcgi_busy_buffers_size"(https://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_busy_buffers_size).
The same situation happens in directive "fastcgi_temp_file_write_size" in https://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_temp_file_write_size, and directive "fastcgi_max_temp_file_size" in https://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_max_temp_file_size. They should all be equal or greater than the maximum of the value of "fastcgi_buffer_size" and "fastcgi_buffers" size.
What's more, the value of directive "fastcgi_busy_buffers_size" must be less than (number-of-fastcgi_buffers - 1)*size-of-fastcgi_buffers. This also should be recorded.