如何为每个操作设置maxAllowedContentLength值?
我有一些用于上传文件的操作,每个操作都需要不同的maxAllowedContentLength值。
我们不希望使用动作过滤器,因为我们希望在IIS级别过滤此请求。另一方面,动作过滤器是从编码角度来看的最佳解决方案,因为它们在路径之后,所以我改变路线,继续工作。
在IIS6中,我知道我们可以使用<location>
标记将maxRequestLength
指定到特定位置。
我不知道如何在IIS7上使用这种方法,我不喜欢这种方法,因为url路由是在web.config中手动编码的。
解决此问题的最佳解决方案是什么?
答案 0 :(得分:1)
我没有找到实现这一目标的方法,我认为没有。可能最好的办法是使用不同的IIS网站进行文件下载操作,使用自定义web.config。
答案 1 :(得分:0)
为您想要不同过滤的区域创建单独的虚拟站点。
然后在IIS服务器上运行此命令。 (替换[IISWebsitename])
C:\Windows\System32\inetsrv>appcmd set config "[IISWebsitename]" -section:requestFiltering -requestLimits.maxAllowedContentLength:100000000 -commitpath:apphost
一次为该网站启用100,000,000字节的上传数据。