Skip to main content
Inspiring
January 19, 2013
Answered

Request URI too Large (414 Error)

  • January 19, 2013
  • 1 reply
  • 6780 views

I have a site which has been in operation for several years.  I am now getting 414 Errors - Request URI too Large -  from dyanamically generated pages.  No code changes have been made to the server.  I am looping over an array to build out a page. 

Here is some typical code:

<form action="#request.self#" method="">

        <table width="98%" border="0" cellspacing="0" cellpadding="2">

                <cfloop from="#evaluate(currentStartRow+1)#" to="#evaluate(currentStartRow+15)#" index="x">

                    <tr>

                        <td valign="top">

                            <select class="small" name="checkType#x#">

                                <cfloop list="#checkTypes#" index="y">

                                    <option value="#y#" <cfif allSteps.t is y>selected</cfif>>#y#</option>

                                </cfloop>

                            </select>

                            <select class="small" name="stepIsActive#x#">

                                <cfloop list="#stepStatus#" index="j">

                                    <option value="#j#" <cfif allSteps.i is j>selected</cfif>>#j#</option>

                                </cfloop>

                            </select>

                            <select class="small" name="method#x#">

                                <cfloop list="#methods#" index="jjj">

                                    <option value="#jjj#" <cfif allSteps.m is jjj>selected</cfif>>#jjj#</option>

                                </cfloop>

                            </select>

                         <textarea class="small" cols="62" rows="4" name="characteristic#x#">

                            #trim(allSteps.c)#

                          </textarea>

                            <input class="small" maxlength="30" name="zone#x#" size="22" value="#allSteps.z#">

                            <input class="small" maxlength="10" name="valueA#x#" size="8" value="#allSteps.a#">

                            <input class="small" maxlength="10" name="valueB#x#" size="8" value="#allSteps.b#">

                        </td>

                    </tr>

                </cfloop>

            <tr>

                <td align="center">

                    <input class="smallButtonGreen" type="submit" value="`save" name="save">

                </td>

            </tr>

        </table>

</form>  

If I set the loop counter lower the page processes.  If I comment out some of the content in the cfm file (meaning that the final page after processing is smaller) the page processes.  If I add  method= "post" the get a 500 Error.  Leaving out the method = "post" I get a 414 error.

The pages in question have not been updated for months and are used everyday.  This problem started two days ago.  Any ideas on how I can figure out this issue?

Thanks

This topic has been closed for replies.
Correct answer intj2

What version of ColdFusion are you using and have you applied ColdFusion Security Hotfix APSB12-06?  That hotfix adds a postParametersLimit restriction of 100 form fields.  Are you hitting that maybe???

I believe this security is also included with ColdFusion 10 and can be modified via the administrator.


Yes - I discovered the APSB13-03 Hot Fix includes APSB12-06.  We just adjusted the limit in our validation environment.  It seems to correct the issue.  See this link for details:  http://www.cutterscrossing.com/index.cfm/2012/3/27/ColdFusion-Security-Hotfix-and-Big-Forms

1 reply

BKBK
Community Expert
Community Expert
January 20, 2013

I suspect the value of the string request.self  is too long. A tip for you: use method="get" and view the page source. Does it tell you anything? Could you show us the source?

intj2Author
Inspiring
January 20, 2013
Please download the attached file to view this post
BKBK
Community Expert
Community Expert
January 21, 2013

I copy-pasted this source code as a CFM file, and ran it. No problems at all.