欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

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

程序员文章站 2024-02-09 14:01:34
一、nginx服务器 nginx出现这个问题的原因是请求实体太长了。一般出现种情况是post请求时body内容post的数据太大了,如上传大文件过大、post数据比较多。...

一、nginx服务器

nginx出现这个问题的原因是请求实体太长了。一般出现种情况是post请求时body内容post的数据太大了,
如上传大文件过大、post数据比较多。

处理方法

在nginx.conf增加 client_max_body_size的相关设置, 这个值默认是1m,可以增加到8m以增加提高文件大小限制;当然可以设置的更大点。

复制代码 代码如下:

# 在http,server或者location段修改下面的配置:
# set client body size to 8m #
client_max_body_size 8m;


二、apache服务器

修改下apache配置文件中的limitrequestbody配置,如果是虚拟主机,请联系空间商帮助修改。

具体步骤:
在apache环境中上传较大软件的时候,有时候会出现413错误,出现这个错误的原因,是因为apache的配置不当造成的,找到apache的配置文件目录也就是conf目录,和这个目录平行的一个目录叫conf.d打开这个conf.d,里面有一个php.conf
目录内容如下:

复制代码 代码如下:
#
# php is an html-embedded scripting language which attempts to make it
# easy for developers to write dynamically generated webpages.
#

loadmodule php4_module modules/libphp4.so

#
# cause the php interpreter handle files with a .php extension.
#

setoutputfilter php
setinputfilter php
limitrequestbody 6550000

#
# add index.php to the list of files that will be served as directory
# indexes.
#
directoryindex index.php


错误就发生在这个limitrequestbody配置上,将这个的值改大到超过你的软件大小就可以了

如果没有这个配置文件请将

复制代码 代码如下:
setoutputfilter php
setinputfilter php
limitrequestbody 6550000

写到apache的配置文件里面即可。

三、iis服务器(windows server 2003系统iis6)

先停止iis admin service服务,然后
找到windows\system32\inesrv\下的metabase.xml,打开,找到aspmaxrequestentityallowed 修改为需要的值,然后重启iis admin service服务

1、在web服务扩展 允许active server pages和在服务器端的包含文档
2、修改各站点的属性 主目录-配置-选项-启用父路径
3、使之可以上传大文档(修改成您想要的大小就可以了,以字节为单位)
c:\windows\system32\inetsrv\metabase.xml

!企业版的windows2003在第592行
默认的预设置值 aspmaxrequestentityallowed="204800" 即200k

将其加两个0,即改为,现在最大就可以上传20m了。

复制代码 代码如下:
aspmaxrequestentityallowed="20480000"