重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
起因说明:
因业务要求,客户需要对以往客户进行阶段性做客户挖掘分析,分析内容包含,客户消费记录、消费内容、客户基本信息情况等行为操作进行分析,客户要求的前端展现行为分析方式是一个页面尽量展现越多的数据越好,因浏览器容量问题,最终跟客户协商一个页面展现2000行记录,四十个字段,而且展现的字段内容有问题反馈等文字描述性的内容,然后对该内容在进行更新提交给服务器,然后在查看更新结果,因提交和展现的页面数据容量偏大,最终导致无法展现相关信息,导致页面报:413 Request Entity Too Large错误信息,
,如下:
站在用户的角度思考问题,与客户深入沟通,找到建水网站设计与建水网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站设计制作、成都网站设计、企业官网、英文网站、手机端网站、网站推广、主机域名、网页空间、企业邮箱。业务覆盖建水地区。
对应部分截取SQL语法如下:
而此问题在我们测试环境下不会出现,因我们本地测试环境是直接访问tomcat,而生产环境通过nginx 然后集群分发访问不同的tomcat,那问题就是出在nginx配置问题。
问题分析:
因为业务客户端请求是走HTTP的post方法提交数据,而提交请求数据nginx是有限制客户端请求主体大小,“content-length”,如果超过了设定值,则客户端会收到报错 413 Request Entity Too Large,导致前端浏览器不能正常显示数据。
因我们前端展现的条目最大2000笔,字段40个,故设置如下大小,最终解决问题:
client_max_body_size 20m;
备注:client_max_body_size 默认 1M,将大小设置为0表示将禁用检查客户端请求正文大小,根据实际业务要求而设定大小。