Nginx 上传大文件超时解决办法

(编辑:jimmy 日期: 2025/1/9 浏览:2)

Nginx 上传大文件超时解决办法

情况如下:用nginx作代理服务器,上传大文件时(本人测试上传50m的文件),提示上传超时或文件过大。

原因是nginx对上传文件大小有限制,而且默认是1M。另外,若上传文件很大,还要适当调整上传超时时间。

解决方法是在nginx的配置文件下,加上以下配置:

client_max_body_size     50m; //文件大小限制,默认1m
client_header_timeout    1m; 
client_body_timeout      1m; 
proxy_connect_timeout     60s; 
proxy_read_timeout      1m; 
proxy_send_timeout      1m;



每个参数的意思:

client_max_body_size

限制请求体的大小,若超过所设定的大小,返回413错误。

client_header_timeout

读取请求头的超时时间,若超过所设定的大小,返回408错误。

client_body_timeout

读取请求实体的超时时间,若超过所设定的大小,返回413错误。

proxy_connect_timeout

http请求无法立即被容器(tomcat, netty等)处理,被放在nginx的待处理池中等待被处理。此参数为等待的最长时间,默认为60秒,官方推荐最长不要超过75秒。

proxy_read_timeout

http请求被容器(tomcat, netty等)处理后,nginx会等待处理结果,也就是容器返回的response。此参数即为服务器响应时间,默认60秒。

proxy_send_timeout

http请求被服务器处理完后,把数据传返回给Nginx的用时,默认60秒。

以上就是对nginx 上传大文件超时的解决办法详解,如有疑问请大家留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。