您的位置:首页 > 运维架构 > Nginx

nginx 常见错误及解决方式

2010-08-30 09:42 309 查看
413 Request Entity Too Large(原文链接 http://ddbiz.com/?p=141) 通过 nginx/linux 转发到 asp.net/iis 上的一段文件上传,出现了 413 Request Entity Too Large的错误。这是因为上传的文件太大造成,可以修改 server {} 中的如下值:

client_max_body_size 1m; ==>

client_max_body_size 5m;

增加内容传输的数据量

proxy_pass的iis端无法获得客户端传来的文件
这个问题是紧跟第一问题出现的。

nginx的一个virtual host的配置为:

server{

location ~ {

proxy_pass http://localhost:1237;
client_max_body_size 5m;

... ...

}
}
nginx把客户端上传的文件转发给 http://localhost:1237; 最初的配置采用默认配置,client_max_body_size = 1m; 大于1m的图片不能被接受。但是当我们把 client_max_body_size=5m;后,图片是可以上传了(可以通过设定 location {client_body_in_file_only on;}看到 nginx 把传入的内容存入了目录),但是后端的iis/asp.net在获取
httprequest.files时,出现超时,不能正确获得上传的文件。
经过仔细调试配置,发现,除了在 location {client_max_body_size 5m;} 之外,server {client_max_body_size 5m;}的这个设置也不能缺失。虽然没有仔细测试过,但是直觉上,server.client_max_body_size > location.client_max_body_size时,location下的转发才能发挥作用。
(原文链接 http://ddbiz.com/?p=141)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: