404 – File or directory not found.

Server Error

404 – File or directory not found.

The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.

 

用户上传一个大小大约为160MB的文件至服务器出现这个错误。Insus.NET把上传文件于本机测试没有问题。但上传至服务器时,这个错误产生了。

本地可以,服务器却Error。可以肯定程序代码没有问题,怎样说呢?Insus.NET 测试尝试上传另一个相同的文件格式,只是大小有所改变,大小约为25MB,它即能成功上传了。

Insus.NET检查了web.config文件,可以上传的文件限制已经设置相当大了200MB。

<system.web>   
    <httpRuntime maxRequestLength="204800" useFullyQualifiedRedirectUrl="true" minFreeThreads="8" minLocalRequestFreeThreads="4" appRequestQueueLimit="100" enableVersionHeader="true" executionTimeout="6000" />
  </system.web>

 

问题出于哪里?

找到资料,原来IIS 的maxAllowedContent Length的缺省值为30000000 bytes.  上传大于这个长度的数据流被截断,导致文件或目录找不到。

 

因此Insus.NET尝试在web.config更改这个设置,添加下面节点:

<system.webServer>    
    <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="2097152000" maxQueryString="5000" maxUrl="8000"></requestLimits>
      </requestFiltering>
    </security>
  </system.webServer>

 

 最后测试上传200MB的文件,能成功上传。

 

posted @ 2012-08-09 11:21  Insus.NET  阅读(12442)  评论(3编辑  收藏  举报