HTTP 錯誤 413.1 - Request Entity Too Large
- 解決辦法
這個報錯的原因是因為IIS配置問題,IIS最大默認配置只有30M,超過30M就會報錯
解決辦法
- 在程序中配置能接收最大字節大小
//配置請求頭中能最大接收多少數據
//builder.WebHost.UseKestrel(options =>
//{
// //209715200:200M;524288000:500M
// options.Limits.MaxRequestBodySize =
// builder.Configuration["RequestBodySize"] == null ?
// long.Parse(builder.Configuration["RequestBodySize"]) : 209715200;
//});builder.Services.Configure<IISServerOptions>(options =>
{options.MaxRequestBodySize = builder.Configuration["RequestBodySize"] == null ?long.Parse(builder.Configuration["RequestBodySize"]) : 209715200; // 設置為你想要的最大字節大小
});//builder.Services.Configure<FormOptions>(x =>
//{
// x.MultipartBodyLengthLimit = builder.Configuration["RequestBodySize"] == null ?
// long.Parse(builder.Configuration["RequestBodySize"]) : 209715200; // 設置為你想要的最大字節大小
// x.MultipartHeadersCountLimit = 10;
//});
-
在接口上方加上屬性:[DisableRequestSizeLimit]
-
IIS配置請求能接收最大字節
1.打開IIS管理器,找到站點對應的配置編輯器
2.找到system.webServer/security/requestFiltering節點,設置請求能接收最大字節數據;這里30000000值30M,可以在加一個0變成300M了
- 看看不文件中的web.config文件是否有變化,箭頭指的配置,如果不設置IIS是沒有的,當然也可以直接copy配置過來
<system.webServer><security><requestFiltering><requestLimits maxAllowedContentLength="3000000000" /></requestFiltering></security>
</system.webServer>