.net core web项目部署IIS报错:HTTP 错误 413.1 - Request Entity Too Large

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>

在这里插入图片描述

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值