]> granicus.if.org Git - apache/blob - docs/manual/mod/mod_request.xml
Update transforms
[apache] / docs / manual / mod / mod_request.xml
1 <?xml version="1.0"?>
2 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
3 <?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
4 <!-- $LastChangedRevision$ -->
5
6 <!--
7  Licensed to the Apache Software Foundation (ASF) under one or more
8  contributor license agreements.  See the NOTICE file distributed with
9  this work for additional information regarding copyright ownership.
10  The ASF licenses this file to You under the Apache License, Version 2.0
11  (the "License"); you may not use this file except in compliance with
12  the License.  You may obtain a copy of the License at
13
14      http://www.apache.org/licenses/LICENSE-2.0
15
16  Unless required by applicable law or agreed to in writing, software
17  distributed under the License is distributed on an "AS IS" BASIS,
18  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19  See the License for the specific language governing permissions and
20  limitations under the License.
21 -->
22
23 <modulesynopsis metafile="mod_request.xml.meta">
24
25 <name>mod_request</name>
26 <description>Filters to handle and make available HTTP request bodies</description>
27 <status>Base</status>
28 <sourcefile>mod_request.c</sourcefile>
29 <identifier>request_module</identifier>
30 <compatibility>Available in Apache 2.3 and later</compatibility>
31
32 <directivesynopsis>
33 <name>KeptBodySize</name>
34 <description>Keep the request body instead of discarding it up to
35 the specified maximum size, for potential use by filters such as
36 mod_include.</description>
37 <syntax>KeptBodySize <var>maximum size in bytes</var></syntax>
38 <default>KeptBodySize 0</default>
39 <contextlist><context>directory</context>
40 </contextlist>
41
42 <usage>
43     <p>Under normal circumstances, request handlers such as the
44     default handler for static files will discard the request body
45     when it is not needed by the request handler. As a result,
46     filters such as mod_include are limited to making <code>GET</code> requests
47     only when including other URLs as subrequests, even if the
48     original request was a <code>POST</code> request, as the discarded
49     request body is no longer available once filter processing is
50     taking place.</p>
51
52     <p>When this directive has a value greater than zero, request
53     handlers that would otherwise discard request bodies will
54     instead set the request body aside for use by filters up to
55     the maximum size specified. In the case of the mod_include
56     filter, an attempt to <code>POST</code> a request to the static
57     shtml file will cause any subrequests to be <code>POST</code>
58     requests, instead of <code>GET</code> requests as before.</p>
59
60     <p>This feature makes it possible to break up complex web pages and
61     web applications into small individual components, and combine
62     the components and the surrounding web page structure together
63     using <module>mod_include</module>. The components can take the
64     form of CGI programs, scripted languages, or URLs reverse proxied
65     into the URL space from another server using
66     <module>mod_proxy</module>.</p>
67
68     <p><strong>Note:</strong> Each request set aside has to be set
69     aside in temporary RAM until the request is complete. As a result,
70     care should be taken to ensure sufficient RAM is available on the
71     server to support the intended load. Use of this directive
72     should be limited to where needed on targeted parts of your
73     URL space, and with the lowest possible value that is still big
74     enough to hold a request body.</p>
75
76     <p>If the request size sent by the client exceeds the maximum
77     size allocated by this directive, the server will return
78     <code>413 Request Entity Too Large</code>.</p>
79
80 </usage>
81
82 <seealso><a href="mod_include.html">mod_include</a> documentation</seealso>
83 <seealso><a href="mod_auth_form.html">mod_auth_form</a> documentation</seealso>
84 </directivesynopsis>
85
86 </modulesynopsis>