我们在 Web 应用程序的管理部分遇到了一些表单问题。有少数表单包含大量字段(它的范围可以从一个输入字段到数百个)。
我们发现,随着这些表单的增长,当表单被发布时,服务器会抛出 500 个错误。
运行测试后,我发现服务器可以处理包含 100 个字段的表单;一旦使用了 101 个或更多字段,我们就会得到错误。
我们运行 Coldfusion,我们已经确定 Coldfusion 不会抛出这个错误。我们从未在 Coldfusion 中看到此错误记录,因此我们假设 IIS 在将请求发送到 Coldfusion 服务器之前就抛出了错误。
我假设在 IIS 7.5 中有一些设置我们可以提高这个限制。我在网上搜索过,但我能找到的只是如何提高此数据的字节大小限制,而不是对允许的字段数量进行任何限制。
那么,我假设这可以改变是对的,如果是这样,怎么做?
最佳答案
这是修补程序 APSB12-06 引入的问题。虽然这是一个 ColdFusion 错误,但人们已经报告了 receiving the error in Tomcat, before it supposedly hit the CF serverneo-runtime.xml
里有设置它定义了 postsizelimit
- 默认为 100。
完整笔记位于 here ,但这是简短版本。
此修补程序在 ColdFusion 中有一个新设置,即后参数限制。此设置限制了 post 请求中的参数数量。默认值为 100。如果 post 请求包含更多指定的参数,则服务器不会处理该请求并抛出异常。此过程使用哈希冲突来防止 DoS 攻击。此设置不同于帖子大小限制(ColdFusion 管理员 > 设置 > 帖子数据的最大大小)。此设置未在 ColdFusion 管理员控制台中公开。但是您可以在 neo-runtime.xml 文件中轻松更改此限制。见下文第 5 点。
想要更改 postParameterLimit 的客户,请转至 {ColdFusion-Home}/lib 进行服务器安装或转至 {ColdFusion-Home}/WEB-INF/cfusion/lib 进行多服务器或 J2EE 安装。在行之后打开文件 neo-runtime.xml。
<var name='postSizeLimit'><number>100.0</number></var>
添加下面的行,您可以使用所需的数字更改 100。
<var name='postParametersLimit'><number>100.0</number></var>
CF10+ 的设置可在 CF 管理设置页面中的
Maximum number of POST request parameters
下进行编辑。下 Server Settings -> Settings
.在我们的 9.0.1 服务器上,我们只是将设置增加到 10000,并没有看到任何不利影响。
关于iis - 如何使用 IIS 7.5 更改可以在表单中发布的字段数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14882788/