IIS7 - 请求筛选模块配置为拒绝超过请求内容长度的请求

时间:2012-06-03 16:12:46

标签: asp.net asp.net-mvc-3 iis iis-7

我想上传图片,它在我的机器上运行正常但是当我把我的网站放在IIS7服务器上供公众使用时,我无法上传任何内容。

错误

  

请求过滤模块配置为拒绝该请求   超出了请求内容的长度。

最有可能导致

  

在Web服务器上配置请求筛选以拒绝请求   因为内容长度超过了配置的值。

你可以尝试的事情

  

验证configuration/system.webServer/security/requestFiltering/requestLimits@maxAllowedContentLength   在applicationhost.config或web.config文件中进行设置。

Web.config中的system.webServer

  <system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
    <modules runAllManagedModulesForAllRequests="true" />
    <security>
      <requestFiltering>
         <requestLimits maxAllowedContentLength="1048576" />
      </requestFiltering>
   </security>
  </system.webServer>

如您所见,我将maxAllowedContentLength设置为1gb。重新启动我的网站仍然收到此错误。我在我的文件系统上创建了一个/uploads/文件夹,它也被认为是。不知道导致此错误的原因以及无法上传图片的原因。

3 个答案:

答案 0 :(得分:39)

<configuration>
    <system.web>
        <httpRuntime maxRequestLength="1048576" />
    </system.web>
</configuration>

来自here

答案 1 :(得分:3)

以下示例Web.config文件将配置IIS拒绝访问HTTP请求,其中&#34; Content-type&#34;标头大于100个字节。

  <configuration>
   <system.webServer>
      <security>
         <requestFiltering>
            <requestLimits>
               <headerLimits>
                  <add header="Content-type" sizeLimit="100" />
               </headerLimits>
            </requestLimits>
         </requestFiltering>
      </security>
   </system.webServer>
</configuration>

来源:http://www.iis.net/configreference/system.webserver/security/requestfiltering/requestlimits

答案 2 :(得分:0)

我有类似的问题,我通过更改applicationhost.config文件的requestlimits maxAllowedContentLength =“40000000”部分来解决,该文件位于“C:\ Windows \ System32 \ inetsrv \ config”目录中

查找安全性部分并添加sectionGroup。

<sectionGroup name="requestfiltering">
    <section name="requestlimits" maxAllowedContentLength ="40000000" />
</sectionGroup>

*注意删除;

<section name="requestfiltering" overrideModeDefault="Deny" />