.net mvc 超过了最大请求长度 限制文件上传大小
在我们的项目中遇到"超过了最大请求长度"如下图所示,是因为IIS默认请求长度4M,当请求长度大于这个值的时候报错,下面是解决方案.
解决方案:修改web.config文件
1、注意在mvc中有两个web.config文件,如下图,一个位于Views下,是用来控制view中的文件;还有一个在位于根目录下,对所有文件起作用。我们修改根目录下web.config
2、修改maxRequestLength:在web.config中我们修改<system.web></system.web>中的maxRequestLength,表示最大请求长度,单位是kb,默认4M
<system.web> <!--最大请求长度,单位为kb--> <httpRuntime maxRequestLength="20480" /> </system.web>
3、修改maxAllowedContentLength: 在web.config中我们修改<system.webServer></system.webServer>中的maxAllowedContentLength,表示附件大小上限,单位是字节,默认约30M
<system.webServer> <!--允许上传文件长度,单位字节--> <security> <requestFiltering> <requestLimits maxAllowedContentLength="20971520"/> </requestFiltering> </security> </system.webServer>
注意:
maxRequestLength与maxAllowedContentLength的区别:
a、前者表示请求长度,后者表示上传文件的大小;
b、前者单位kb,后者单位字节;
c、前者默认值4M,后者默认值30000000B,约30M;
d、两者的最大值都为2G
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步