IIS7,SSL和“由于请求实体太大,因此未显示该页面。”

时间:2011-07-05 16:02:24

标签: asp.net iis-7 web-config app-config

我们在64位计算机上的IIS7上通过SSL运行ASP.NET应用程序。

现在我发现有几篇文章提到要解决此错误,我需要修改system.webServer/serverRuntime/uploadReadAheadSize。精细。我尝试通过appcmd.exe,然后手动编辑我的web.config来设置:                

    other config settings

    -->
    <serverRuntime uploadReadAheadSize="1048576" />
  </system.webServer>

但是,当我在网站的web.config中设置它时,我收到此错误:

  

此配置部分不能在此路径中使用。当该部分被锁定在父级别时会发生这种情况。锁定是默认情况下(overrideModeDefault =“Deny”),或由locationMode =“Deny”或遗留allowOverride =“false”的位置标记显式设置。

从那里,我用谷歌搜索并发帖说这个配置部分需要解锁。所以我运行appcmd.exe来解锁它,但是我从appcmd.exe收到错误:

  

C:\ Windows \ System32 \ inetsrv&gt; appcmd.exe set config -section:system.webserver / serverruntime / uploadreadaheadsize:1048576 / commit:apphost ERROR(消息:未知配置部分“system.webserver / serverruntime / uploadreadaheadsize:1048576 “。替换为?寻求帮助。)

我在64位记事本中打开并修改了它:

<section name="serverRuntime" overrideModeDefault="Allow" />

首先,让它被覆盖是明智的吗?如果没有,有哪些替代方案?如果它被覆盖,在我的web.config中设置它的潜在问题是什么,以便uploadreadaheadsize大于默认值?一个站点提到了DoS攻击的可能性。

1 个答案:

答案 0 :(得分:7)

我建议只是为需要这种功能的网站设置它,你可以使用AppCmd轻松地做到这一点,这里是启用默认网站的语法:

appcmd.exe set config "Default Web Site" -section:system.webServer/serverRuntime /uploadReadAheadSize:"1048576"  /commit:apphost

服务器运行时允许您设置一些其他功能,这些功能取决于服务器(如果它托管第三方站点或其他不受信任的内容),您可能不希望为它们提供这些功能,因此不要委托它(解锁)有道理。