向httphandler发布数据的〜29MB比404错误
-
01-10-2019 - |
题
我正在测试一个接受XML的httphandler。当发布少量数据时,它可以正常工作,但是如果我发布的数据大于29MB,则会收到ASP.NET 404错误。
我正在同一项目中的另一个处理程序中发布给处理程序,我尝试了2种方法-1。httpwebrequest带有“ post” 2. webclient with uploadfile()和uploaddata()和uploaddata()
上面发布的数据时,我会遇到相同的404错误 28.6 MB.
我还尝试在接收处理程序的开头和调试开始时放一个断点。它永远不会击中。看起来像处理程序从未被召唤过。适用于较小尺寸的数据。
我已经有以下设置。我究竟做错了什么?
<httpRuntime maxRequestLength="1048576" />
编辑:我还尝试将不会仅消耗张贴的数据的其他处理程序发布,但结果是相同的。环境:WIN 7,IIS 7.5,.NET 3.5,vs 2008Alt Text http://img401.imageshack.us/img401/4099/errormr.png
解决方案
我发现问题是IIS 7及以上。它需要在其他位置设置最大请求长度。
请参阅以下链接 -
http://www.experts-exchange.com/programming/languages/.net/asp.net/q_22943810.html
http://msdn.microsoft.com/en-us/library/ms689462%28vs.90%29.aspx
默认值为30000000。为28.6MB。 Web.config中设置的正确方法是 -
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1073741824"></requestLimits>
</requestFiltering>
</security>
</system.webServer>
此配置清除了我遇到的错误。我希望报告的错误至少在本地机器上更具描述性
这是否意味着设置u003ChttpRuntime maxRequestLength="1048576" />足以容纳IIS 6吗? (直播服务器是Win2003)
其他提示
尝试将此部分添加到 web.config
文件:
<location path="YourHandler.aspx">
<system.web>
<httpRuntime maxRequestLength="1048576" executionTimeout="3600" />
</system.web>
</location>
假设您的处理程序是 YourHandler.aspx
.