【Nginx常用设置信息】蹉跎莫遣韶光老,人生唯有读书好。这篇文章主要讲述Nginx常用设置信息相关的知识,希望能为你提供帮助。
1. 配置信息
http
# 设置缓存字符串大小,主要用于服务端返回数据过长被截断时使用
proxy_buffer_size 1024k;
proxy_buffers 16 1024k;
#允许客户端上传文件的大小(默认1M)
client_max_body_size10m;
#分配给客户端请求数据的缓存大小
client_body_buffer_size 1280k;
#客户端请求内容超时时间(状态码:408)
client_body_timeout600;
#客户端请求header头信息的超时时间(状态码:408)
client_header_timeout600;
2. 详解
2.1 proxy_buffer_size
语法结构
proxy_buffer_size size
proxy_buffer_size 的默认值是 4k 或者 8k,它的作用是指定nginx读缓存的大小.Nginx使用proxy_buffer_size的大小申请相应read_buf,即指定upstream header的最大长度,如果响应头超过了这个长度,Nginx会报upstream sent too big header的错误,然后客户端收到502的错误码.我们根据项目应将该值调整至合理范围,保证足够的读缓存大小.2.2 proxy_buffers
语法结构
proxy_buffers 数量 size
proxy_buffers的默认值是2568k,它的作用是设置存储被代理服务器响应的body所占用的buffer个数以及每个buffer大小.默认值的意思是开辟了256个长度为8k大小的read_buf用来存储body,但是并不是连接建立时就开辟256个对应的缓存,而是在当前buffer不够存储响应的body大小时才会申请一个新的buffer,最多申请256个buffer.2.3 client_max_body_size
语法结构
client_max_body_size 大小
client_max_body_size默认1M,表示客户端请求服务器最大允许大小,在“Content-Length”请求头中指定.如果请求的正文数据大于client_max_body_size,HTTP协议会报错413RequestEntityTooLarge.就是说如果请求的正文大于client_max_body_size,一定是失败的.如果需要上传大文件,一定要修改该值.2.4 client_max_body_size
语法结构
client_body_buffer_size 1280k;
Nginx分配给请求数据的Buffer大小,如果请求的数据小于client_body_buffer_size直接将数据先在内存中存储.如果请求的值大于client_body_buffer_size小于client_max_body_size,就会将数据先存储到临时文件中,即client_body_temp指定的路径中,默认该路径值是/tmp/,所以配置的client_body_temp路径,Nginx的用户组一定要有读写权限.否则当传输的数据大于client_body_buffer_size时,写进临时文件则会失败会报错.
推荐阅读
- MAE自监督算法介绍和基于EasyCV的复现
- MySQL8 JDBC连接zeroDateTimeBehavior注意事项
- 小型园区网络实例
- Google DevOps 度量(监控和可观测性)
- electron学习笔记如何通过electron实现图片查看器
- 百度程序员Android开发小技巧
- 算法题每日一练---第52天(位运算求解子集)
- 软件项目管理 2.1.项目立项
- 域成员服务器怎么会突然脱域()