我有一个窗体,除了一个文件上传在ASP.NET。我需要将最大上传大小增加到默认的4 MB以上。
我发现在msdn的某些地方引用了下面的代码。
[ConfigurationPropertyAttribute("maxRequestLength", DefaultValue = )]
没有任何参考文献真正描述了如何使用它,我已经尝试了几次,但都没有成功。我只想为要求上传文件的某些页面修改此属性。
走这条路对吗?我怎么使用这个呢?
我有一个窗体,除了一个文件上传在ASP.NET。我需要将最大上传大小增加到默认的4 MB以上。
我发现在msdn的某些地方引用了下面的代码。
[ConfigurationPropertyAttribute("maxRequestLength", DefaultValue = )]
没有任何参考文献真正描述了如何使用它,我已经尝试了几次,但都没有成功。我只想为要求上传文件的某些页面修改此属性。
走这条路对吗?我怎么使用这个呢?
当前回答
最大文件大小可以限制为单个MVC控制器甚至一个动作。 网络。Config <location>标签可以用于此:
<location path="YourAreaName/YourControllerName>/YourActionName>">
<system.web>
<!-- 15MB maxRequestLength for asp.net, in KB 15360 -->
<httpRuntime maxRequestLength="15360" />
</system.web>
<system.webServer>
<security>
<requestFiltering>
<!-- 15MB maxAllowedContentLength, for IIS, in bytes 15728640 -->
<requestLimits maxAllowedContentLength="15728640" />
</requestFiltering>
</security>
</system.webServer>
</location>
或者你可以在区域自己的web.config中添加这些条目。
其他回答
如果你使用的是Framework 4.6
<httpRuntime targetFramework="4.6.1" requestValidationMode="2.0" maxRequestLength="10485760" />
如果你使用sharepoint,你也应该在管理工具中配置最大大小: kb925083
如果是windows 2003 / IIS 6.0,那么在C:\windows\system32\inetsrv\目录下的metbase .xml文件中检查AspMaxRequestEntityAllowed = "204800"
默认值“204800”(~205Kb)在我看来对于大多数用户来说太低了。只需将值更改为您认为应该是max的值。
如果你不能保存文件后编辑它,你必须停止ISS-server或使服务器允许编辑文件:
(来源:itmaskinen.se)
编辑:我没有阅读正确的问题(如何设置webconfig中的maxrequest)。但是这一信息可能会引起其他人的兴趣,许多人将他们的网站从win2000-server迁移到win2003,并且有一个正常的上传功能,然后突然收到了请求。BinaryRead失败错误将使用它。所以我把答案留在这里。
对于iis7 +,除了添加httpRuntime maxRequestLength设置外,还需要添加:
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="52428800" /> <!--50MB-->
</requestFiltering>
</security>
</system.webServer>
或者在IIS(7)中:
选择您要启用接受大文件上传的网站。 在主窗口双击“请求过滤” 选择“编辑功能设置” 修改“最大允许内容长度(字节)”
我知道这是个老问题。
这就是你要做的:
在你的网上。配置文件,在<system.web>:
<!-- 3GB Files / in kilobyte (3072*1024) -->
<httpRuntime targetFramework="4.5" maxRequestLength="3145728"/>
在<system.webServer>:
<security>
<requestFiltering>
<!-- 3GB Files / in byte (3072*1024*1024) -->
<requestLimits maxAllowedContentLength="3221225472" />
</requestFiltering>
</security>
你可以在评论中看到它是如何工作的。在其中一个中,sie的单位是字节,在另一个中,sie的单位是千字节。希望这能有所帮助。