.NET 8
开发的应用部署在IIS 10.0
上,在上传一个38MB的视频文件时,提示上传失败,看请求,提示了413 Payload Too Large
错误,如下图:
这个错误通常是由于客户端发送的请求负载(请求体)大小超过了服务器的限制而引起的。可以根据以下方式来解决:
1、打开IIS的配置编辑器
,定位到system,webServer/security/requestFiltering
配置节,修改maxAllowedContentLength
值为:1073741824,表示1个G大小,如下图:
2、打开IIS的配置编辑器
,定位到system.webServer/serverRuntime
配置节,修改maxRequestEntityAllowed
和uploadReadAheadSize
的值为4294967295和1073741824。如下图:
修改完各配置后,记得点击右侧的应用,然后重启IIS。
再次上传该文件,提示上传成功!如果还是提示错误,接着下面的进行处理。
解决Request Entity Too Large
如果提示Request Entity Too Large
错误,需要在进一步进行设置。打开根目录下的web.config文件,在system.webServer
节点下,增加以下代码:
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1073741824" />
</requestFiltering></security>
保存后,重启网站,再次上传该文件,提示上传成功!如果还是提示错误,接着下面的进行处理。
如果还是提示413 Request body too large
,打开项目解决方案的Startup.cs
,添加如下代码:
services.Configure<FormOptions>(options =>{
options.ValueLengthLimit = int.MaxValue;
options.MultipartBodyLengthLimit = 1073741824;});
[DisableRequestSizeLimit]
保存,生成项目,生成项目。将修改后的代码覆盖,再次上传文件,提示上传成功。
如果还是不行的话,我真帮不了你啦~~,因为我也实在没办法了哦~