Nginx反向代理解决超长请求串

简介:

Nginx遇到超长的post或get请求时,nginx会反回413、400、414错误。

post和get方式的解决办法:

针对post方式


client_max_body_size 10M;

指定允许客户端请求的最大的单个文件大小,如果请求大于指定的值,客户端将收到一个"413 Request Entity Too Large"错误。

client_body_in_single_buffer 16k;

指定连接请求使用的缓存区大小,如果连接请求超过缓存区指定的值,那么这些请求或部分请求将尝试写入一个临时文件。

client_body_temp_path /data/tmp;

设置临时文件存放路径。只有当上传的请求体超出缓存区大小时,才会写到临时文件中,注意路径要有写入权限。

针对get方式


client_header_buffer_size 8k;

指定客户端请求的http头部缓存区大小,大多数情况下一个头部请求的大小不会大于1k,不过如果有来自于wap客户端的较大的cookie它可能会大于1k,Nginx将分配给它一个更大的缓存区,这个值可以在large_client_header_buffers里面设置。

large_client_header_buffers 16 16k;

如果设置过小HTTP头/Cookie过大时会报400错误"nginx 400 bad request ",如果超过buffer就会报"414 Request URI too large"错误,nginx接受最长的HTTP头部大小必须比其中一个buffer大,否则就会报"nginx 400 bad request "错误。

目录
相关文章
|
3月前
|
应用服务中间件 nginx
百度搜索:蓝易云【HTTP请求是如何关联Nginx server{}块的?】
总结来说,Nginx中的 `server{}`块用于关联HTTP请求和虚拟主机,通过配置不同的 `server{}`块,可以实现多个域名或IP地址的请求分发和处理。这样,Nginx可以根据不同的请求来提供不同的服务和内容。
37 0
|
3月前
|
JSON 应用服务中间件 API
利用Grafana的API Key+Nginx反向代理实现Grafana免登录访问
利用Grafana的API Key+Nginx反向代理实现Grafana免登录访问
86 1
|
3月前
|
负载均衡 应用服务中间件 nginx
nginx-tomcat反向代理以及负载均衡测试
nginx-tomcat反向代理以及负载均衡测试
|
1月前
|
负载均衡 应用服务中间件 Linux
|
2月前
|
tengine Rust 负载均衡
反向代理学习笔记(一) Nginx与反向代理绪论
反向代理学习笔记(一) Nginx与反向代理绪论
|
2月前
|
负载均衡 Java 应用服务中间件
|
2月前
|
消息中间件 关系型数据库 MySQL
使用Nginx的stream模块实现MySQL反向代理与RabbitMQ负载均衡
使用Nginx的stream模块实现MySQL反向代理与RabbitMQ负载均衡
59 0
|
3月前
|
监控 安全 前端开发
Nginx 访问日志中有 Get 别的网站的请求是什么原因?
Nginx 访问日志中有 Get 别的网站的请求是什么原因?
33 0
|
3月前
|
应用服务中间件 nginx
4.5.1 Nginx反向代理与系统参数配置conf原理
4.5.1 Nginx反向代理与系统参数配置conf原理
|
3月前
|
存储 负载均衡 网络协议
Nginx反向代理与系统参数配置conf原理
Nginx反向代理与系统参数配置conf原理
58 0