0

我正在尝试在 Azure 网站上使用带有一些附加功能的 jquery dataTables。它会生成一个相当大的查询字符串(测试中的 2121 个字符)。这会在 Azure 网站上返回错误代码(您要查找的资源已被删除、名称已更改或暂时不可用。)。

为了让它在本地工作,我用这个编辑了 web.config:

<httpRuntime maxQueryStringLength="4000" maxUrlLength="4000"/>

(我相信只有 maxQueryStringLength 是真正需要的)。

无论如何,在本地和另一台服务器上一切都很好,但在 WA 网站上我无法让它工作。有任何想法吗?

4

1 回答 1

1

尝试自定义IIS 请求过滤参数。我怀疑您正在使用Cassini(Visual Studio 开发服务器)进行本地开发。

与查询字符串和/或 URL 最大长度相关的限制出现在 Azure 网站(或任何 IIS 环境)的两个级别:

  • ASP.NET 运行时httpRuntime:使用节点及其关联属性解除了这些限制
  • IIS 请求过滤模块:IIS 还应用自己的关于 URL 和查询字符串长度的过滤规则,甚至在 ASP.NET 运行时处理请求之前。默认情况下,查询字符串的最大允许长度为 2048(请参阅此处)。您应该在子节点Web.config下的, 中设置适当的值,例如:requestLimits

    <system.webServer>
      <security>
        <requestFiltering>
          <requestLimits maxQueryString="4096"/>
        </requestFiltering>
      </security>
    </system.webServer>
    

另请参阅此问题

于 2013-11-20T19:16:03.293 回答