我在centOS发行版上有nginx。一切都配置为上传文件对我来说很好..
nginx服务器配置等其他文件也有这些上传指令。
但是当我上传1mb文件时,nginx错误413 Request Entity Too Large。 我的网络应用程序显示该服务器具有60mb文件限制,如info.php文件。 我做了重启,nginx重装,重启,php重装。
我已经检查了stackoverflow和net上的所有内容以修复此问题,但没有任何帮助。
Nginx日志:Nginx显示用户正在尝试上传大于限制的文件。
我的 info.php 文件有一个pdf:http://docdro.id/YAylJcO
答案 0 :(得分:2)
您是否编辑过nginx.conf。
在服务器部分中添加client_max_body_size xxM
,其中xx是您要允许的大小(以兆字节为单位)。
答案 1 :(得分:0)
默认情况下,nginx配置为允许客户端最大主体大小为1MB。您正在上传的文件(〜8MB)大于1MB,这就是为什么返回413(请求实体太大)错误的原因。
要解决此问题,只需编辑 nginx.conf 并添加client_max_body_size
配置,如下所示:
######################
# HTTP server
######################
server {
...
listen 80;
server_name xxxx.com;
client_max_body_size 20M;
...
}
如果您还配置了HTTPS,请确保在其中也添加client_max_body_size
:
######################
# HTTPS server
######################
server {
...
listen 443 default_server ssl;
server_name xxxx.com;
client_max_body_size 20M;
...
}
重新加载服务器,您应该会很好!
[服务器] $ sudo service nginx reload
有关client_max_body_size
的更多信息,请访问:http://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size
语法:client_max_body_size大小;
默认值:client_max_body_size 1m;
上下文:http,服务器,位置
设置客户端请求正文的最大允许大小,在 “内容长度”请求标头字段。如果在请求中的大小 超过配置的值,则出现413(请求实体太大)错误 返回给客户端。请注意,浏览器无法 正确显示此错误。将大小设置为0将禁用对 客户请求正文大小。