三个思路解决413 Request Entity Too Large报错处理

最近一个项目当中,要求上传图片,并且限制图片大小,虽然在laravel当中已经添加了相关的表单验证来阻止文件过大的上传,然而当提交表单时,还没轮到laravel处理,nginx就先报错了。当你仔细看报错页面时,你会发现有nginx版本信息,经过分析,这报错是因为nginx的默认上传文件大小配置client_max_body_size只有2MB, 基于nginx验证比laravel验证要早,想要友好报错而不是直接显示413 Request Entity Too Large,那么就有三个思路去解决。

思路一:修改nginx配置

 这是最简单的一个做法,着报错原因是nginx不允许上传配置过大的文件,那么件把nginx的上传大小配置调高就好。

1、打开nginx主配置文件nginx.conf,一般在/usr/local/nginx/conf/nginx.conf这个位置,找到http{}段并修改以下内容:

client_max_body_size 2m;

  当中的2m修改成你需要的允许文件大小。

   2、修改后,测试nginx配置是否正确

/usr/local/nginx/sbin/nginx -t

3、测试配置正确后,重启nginx使配置生效 

/etc/init.d/nginx restart

注意:要是以php运行的话,这个大小client_max_body_size要和php.ini中的如下值的最大值差不多或者稍大,这样就不会因为提交数据大小不一致出现错误。

  1. post_max_size = 2M
  2. upload_max_filesize = 2M

当中的2m修改成你需要的允许文件大小。把当中的2m修改成你第一步设置的大小。

 

原文地址:https://www.cnblogs.com/agang-php/p/11751848.html

时间: 2024-10-08 15:09:58

三个思路解决413 Request Entity Too Large报错处理的相关文章

部署项目到远程tomcat的413 Request Entity Too Large报错处理

当项目jar包过多时,部署项目会报错而错误原因很清楚了,文件太大了. 因为用了nginx代理,而nginx默认文件大小有限,所以需要设置nginx上传文件大小限制 client_max_body_size 2m; 然后重新加载配置即可. 其实本可以不通过nginx转发就可上传,但是直接访问tomcat的manager给我报403错误,未解决.... 原文地址:https://www.cnblogs.com/webyyq/p/9121006.html

nginx、Apache、IIS服务器解决 413 Request Entity Too Large问题方法汇总

一.nginx服务器 nginx出现这个问题的原因是请求实体太长了.一般出现种情况是Post请求时Body内容Post的数据太大了,如上传大文件过大.POST数据比较多. 处理方法 在nginx.conf增加 client_max_body_size的相关设置, 这个值默认是1m,可以增加到8m以增加提高文件大小限制:当然可以设置的更大点. 代码如下: # 在http,server或者location段修改下面的配置:# set client body size to 8M #client_ma

nginx、Apache、IIS中413 Request Entity Too Large问题解决方法

分享下nginx.Apache.IIS三种服务器解决413 Request Entity Too Large问题的方法. 一.nginx服务器 nginx出现这个问题的原因是请求实体太长了.一般出现种情况是Post请求时Body内容Post的数据太大了,如上传大文件过大.POST数据比较多. 处理方法在nginx.conf增加 client_max_body_size的相关设置, 这个值默认是1m,可以增加到8m以增加提高文件大小限制:当然可以设置的更大点.# 在http,server或者loc

Nginx出现413 Request Entity Too Large错误解决方法

Nginx出现的413 Request Entity Too Large错误,这个错误一般在上传文件的时候出现,打开nginx主配置文件nginx.conf,找到http{}段,添加 解决方法就是 打开nginx主配置文件nginx.conf,一般在/usr/local/nginx/conf/nginx.conf这个位置,找到http{}段,修改或者添加  代码如下 复制代码 client_max_body_size 2m; 然后重启nginx,  代码如下 复制代码 sudo /etc/ini

Nginx出现“413 Request Entity Too Large”错误解决方法

今天使用phpmyadmin的导入功能的时候,由于sql文件过大,服务器出现错误提示了,413 Request Entity Too Large,google了一下,发现是Nginx的错误提示.  解决方法:打开nginx主配置文件nginx.conf,找到http{}段,添加 client_max_body_size 100m; fedora下 vi /etc/nginx/nginx.conf  重启NGINX   sudo /etc/init.d/nginx restart 恢复正常

nginx 问题 413 Request Entity Too Large的解决方法

上传图片出现Nginx出现"413 Request Entity Too Large"错误解决方法 看了一下nginx.conf发现没有设置client_max_body_size,这个参数默认只是1M,也就是说发布的文章内容大小不能超过1M 解决方法:打开nginx主配置文件nginx.conf,找到http{}段,添加 client_max_body_size 20m;

Nginx 出现413 Request Entity Too Large得解决方法

Nginx 出现413 Request Entity Too Large得解决方法 默认情况下使用nginx反向代理上传超过2MB的文件,会报错413 Request Entity Too Large ,修改或增加配置client_max_body_size值即可: nginx默认上传文件的大小是1M 解决方法: 打开/usr/local/etc/nginx/nginx.conf,找到 http { -- } 在里面加入 client_max_body_size 4m; 如: http { --

“413 Request Entity Too Large” 错误解决

错误现象"nginx 413 when uploading file 1mb or larger": 原来跑的好好的程序,使用nginx做代理后,上传大于1M 的文件提交表单时就请求不到后台方法了,一开始还以为是自己程序哪里出了问题,各种折腾重新部署啥的调试了大半天,还是不行,后来用chrome的F12查看network才发现是"413 Request Entity Too Large" 这么个错误,如图: 随后便google之,发现nginx默认限制了最大上传文件

Nginx出现413 Request Entity Too Large错误

一. 问题出现 使用phpMyAdmin管理mysql数据,使用图形界面导入sql语句时报错,报错内容如下: 二. 问题原因 出现了413错误,413错误是因为用户请求body的数据大于设置的值.用户请求的body的值可用Content-Length看到 可以看到请求的body大小大于6M,通过查看Nginx官网可知默认request body为1M,而设置request body的参数为client_max_body_size 三. 解决问题的方法 修改client_max_body_size