|  | <?xml version="1.0"?> | 
|  | <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd"> | 
|  | <?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?> | 
|  | <!-- $LastChangedRevision$ --> | 
|  |  | 
|  | <!-- | 
|  | Licensed to the Apache Software Foundation (ASF) under one or more | 
|  | contributor license agreements.  See the NOTICE file distributed with | 
|  | this work for additional information regarding copyright ownership. | 
|  | The ASF licenses this file to You under the Apache License, Version 2.0 | 
|  | (the "License"); you may not use this file except in compliance with | 
|  | the License.  You may obtain a copy of the License at | 
|  |  | 
|  | http://www.apache.org/licenses/LICENSE-2.0 | 
|  |  | 
|  | Unless required by applicable law or agreed to in writing, software | 
|  | distributed under the License is distributed on an "AS IS" BASIS, | 
|  | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
|  | See the License for the specific language governing permissions and | 
|  | limitations under the License. | 
|  | --> | 
|  |  | 
|  | <!--<modulesynopsis> is the root tag and must surround all other tags. | 
|  | The sequence of tags is important and must be followed in order for | 
|  | the document to validate. --> | 
|  |  | 
|  | <modulesynopsis metafile="mod_ratelimit.xml.meta"> | 
|  | <name>mod_ratelimit</name> | 
|  | <description>Bandwidth Rate Limiting for Clients</description> | 
|  | <status>Extension</status> | 
|  | <sourcefile>mod_ratelimit.c</sourcefile> | 
|  | <identifier>ratelimit_module</identifier> | 
|  | <compatibility> | 
|  | <code>rate-initial-burst</code> available in httpd 2.4.24 and later. | 
|  | Rate limiting proxied content does not work correctly up to httpd 2.4.33. | 
|  | </compatibility> | 
|  |  | 
|  | <summary> | 
|  |  | 
|  | <p>Provides a filter named <code>RATE_LIMIT</code> to limit client bandwidth. | 
|  | The throttling is applied to each HTTP response while it is transferred to the client, | 
|  | and not aggregated at IP/client level. | 
|  | The connection speed to be simulated is specified, in KiB/s, using the environment | 
|  | variable <code>rate-limit</code>.</p> | 
|  |  | 
|  | <p>Optionally, an initial amount of burst data, in KiB, may be | 
|  | configured to be passed at full speed before throttling to the | 
|  | specified rate limit.  This value is optional, and is set using | 
|  | the environment variable <code>rate-initial-burst</code>.</p> | 
|  |  | 
|  | <example><title>Example Configuration</title> | 
|  | <highlight language="config"> | 
|  | <Location "/downloads"> | 
|  | SetOutputFilter RATE_LIMIT | 
|  | SetEnv rate-limit 400 | 
|  | SetEnv rate-initial-burst 512 | 
|  | </Location> | 
|  | </highlight> | 
|  |  | 
|  | <note type="warning"> | 
|  | If the value specified for <code>rate-limit</code> causes integer overflow, the rate-limited will be disabled. | 
|  | If the value specified for <code>rate-limit-burst</code> causes integer overflow, the burst will be disabled. | 
|  | </note> | 
|  |  | 
|  | </example> | 
|  |  | 
|  | </summary> | 
|  |  | 
|  | </modulesynopsis> |