mod_proxy_http.html.en revision 43a906741e1d11f0f1d0c189d1b55eafbcc21d14
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<?xml version="1.0" encoding="ISO-8859-1"?>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
af4381d113faafc97340eaaa008840c7fcbcc8fdsf XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
af4381d113faafc97340eaaa008840c7fcbcc8fdsf This file is generated from xml source: DO NOT EDIT
af4381d113faafc97340eaaa008840c7fcbcc8fdsf XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
af4381d113faafc97340eaaa008840c7fcbcc8fdsf -->
96ad5d81ee4a2cc66a4ae19893efc8aa6d06fae7jailletc<title>mod_proxy_http - Apache HTTP Server</title>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen<link href="/style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
2e545ce2450a9953665f701bb05350f0d3f26275nd<link href="/images/favicon.ico" rel="shortcut icon" /></head>
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen<body>
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen<div id="page-header">
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.html">Directives</a> | <a href="/faq/">FAQ</a> | <a href="/glossary.html">Glossary</a> | <a href="/sitemap.html">Sitemap</a></p>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<p class="apache">Apache HTTP Server Version 2.3</p>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<img alt="" src="/images/feather.gif" /></div>
af33a4994ae2ff15bc67d19ff1a7feb906745bf8rbowen<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="/images/left.gif" /></a></div>
3f08db06526d6901aa08c110b5bc7dde6bc39905nd<div id="path">
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.3</a> &gt; <a href="./">Modules</a></div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<div id="page-content">
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<div id="preamble"><h1>Apache Module mod_proxy_http</h1>
3f08db06526d6901aa08c110b5bc7dde6bc39905nd<div class="toplang">
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<p><span>Available Languages: </span><a href="/en/mod/mod_proxy_http.html" title="English">&nbsp;en&nbsp;</a></p>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>HTTP support module for
f086b4b402fa9a2fefc7dda85de2a3cc1cd0a654rjung<code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code></td></tr>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<tr><th><a href="module-dict.html#Status">Status:</a></th><td>Extension</td></tr>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<tr><th><a href="module-dict.html#ModuleIdentifier">Module�Identifier:</a></th><td>proxy_http_module</td></tr>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<tr><th><a href="module-dict.html#SourceFile">Source�File:</a></th><td>mod_proxy_http.c</td></tr></table>
7f0952c0239ea2d6e37b472db6fde4ef2718343dsf<h3>Summary</h3>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
b09fcdfc59ada4712150e7bcc7b502bb9e4601d8rjung <p>This module <em>requires</em> the service of <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code>. It provides the features used for
af4381d113faafc97340eaaa008840c7fcbcc8fdsf proxying HTTP requests. <code class="module"><a href="/mod/mod_proxy_http.html">mod_proxy_http</a></code>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf supports HTTP/0.9, HTTP/1.0 and HTTP/1.1. It does <em>not</em>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf provide any caching abilities. If you want to set up a caching
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf proxy, you might want to use the additional service of the
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> module.</p>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <p>Thus, in order to get the ability of handling HTTP proxy requests,
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code> and <code class="module"><a href="/mod/mod_proxy_http.html">mod_proxy_http</a></code>
30471a4650391f57975f60bbb6e4a90be7b284bfhumbedooh have to be present in the server.</p>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <div class="warning"><h3>Warning</h3>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <p>Do not enable proxying until you have <a href="mod_proxy.html#access">secured your server</a>. Open proxy
af4381d113faafc97340eaaa008840c7fcbcc8fdsf servers are dangerous both to your network and to the Internet at
af4381d113faafc97340eaaa008840c7fcbcc8fdsf large.</p>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf </div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<div id="quickview"><h3 class="directives">Directives</h3>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<p>This module provides no
20f499565e77defe9dab24dd85c02f38a1175855nd directives.</p>
a4784b5a082381b03e972caf3aa052a64c68f06dhumbedooh<h3>Topics</h3>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<ul id="topics">
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<li><img alt="" src="/images/down.gif" /> <a href="#env">Environment Variables</a></li>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</ul><h3>See also</h3>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf<ul class="seealso">
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<li><code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code></li>
48b62528cd9513fe8b5f1bbcee92ab3b28c94807rbowen<li><code class="module"><a href="/mod/mod_proxy_connect.html">mod_proxy_connect</a></code></li>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf</ul></div>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<div class="section">
20f499565e77defe9dab24dd85c02f38a1175855nd<h2><a name="env" id="env">Environment Variables</a></h2>
a4784b5a082381b03e972caf3aa052a64c68f06dhumbedooh <p>In addition to the configuration directives that control the
af4381d113faafc97340eaaa008840c7fcbcc8fdsf behaviour of <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code>, there are a number of
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <dfn>environment variables</dfn> that control the HTTP protocol
af4381d113faafc97340eaaa008840c7fcbcc8fdsf provider:</p>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <dl>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <dt>proxy-sendextracrlf</dt>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <dd>Causes proxy to send an extra CR-LF newline on the end of a
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf request. This is a workaround for a bug in some browsers.</dd>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <dt>force-proxy-request-1.0</dt>
20f499565e77defe9dab24dd85c02f38a1175855nd <dd>Forces the proxy to send requests to the backend as HTTP/1.0
a4784b5a082381b03e972caf3aa052a64c68f06dhumbedooh and disables HTTP/1.1 features.</dd>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <dt>proxy-nokeepalive</dt>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <dd>Forces the proxy to close the backend connection after
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf each request.</dd>
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf <dt>proxy-chain-auth</dt>
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf <dd>If the proxy requires authentication, it will read and
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf consume the proxy authentication credentials sent by the client.
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf With <var>proxy-chain-auth</var> it will <em>also</em> forward
20f499565e77defe9dab24dd85c02f38a1175855nd the credentials to the next proxy in the chain. This may
a4784b5a082381b03e972caf3aa052a64c68f06dhumbedooh be necessary if you have a chain of proxies that share
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf authentication information. <strong>Security Warning:</strong>
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf Do not set this unless you know you need it, as it forwards
af4381d113faafc97340eaaa008840c7fcbcc8fdsf sensitive information!</dd>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <dt>proxy-sendcl</dt>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <dd>HTTP/1.0 required all HTTP requests that include a body
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf (e.g. POST requests) to include a <var>Content-Length</var>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf header. This environment variable forces the Apache proxy to
af4381d113faafc97340eaaa008840c7fcbcc8fdsf send this header to the backend server, regardless of what the
af4381d113faafc97340eaaa008840c7fcbcc8fdsf Client sent to the proxy. It ensures compatibility when
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf proxying for an HTTP/1.0 or unknown backend. However, it
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf may require the entire request to be buffered by the proxy,
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf so it becomes very inefficient for large requests.</dd>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <dt>proxy-sendchunks or proxy-sendchunked</dt>
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf <dd>This is the opposite of <var>proxy-sendcl</var>. It allows
af4381d113faafc97340eaaa008840c7fcbcc8fdsf request bodies to be sent to the backend using chunked transfer
7f0952c0239ea2d6e37b472db6fde4ef2718343dsf encoding. This allows the request to be efficiently streamed,
af4381d113faafc97340eaaa008840c7fcbcc8fdsf but requires that the backend server supports HTTP/1.1.</dd>
b09fcdfc59ada4712150e7bcc7b502bb9e4601d8rjung <dt>proxy-interim-response</dt>
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf <dd>This variable takes values <code>RFC</code> or
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <code>Suppress</code>. Earlier httpd versions would suppress
af4381d113faafc97340eaaa008840c7fcbcc8fdsf HTTP interim (1xx) responses sent from the backend. This is
af4381d113faafc97340eaaa008840c7fcbcc8fdsf technically a violation of the HTTP protocol. In practice,
af4381d113faafc97340eaaa008840c7fcbcc8fdsf if a backend sends an interim response, it may itself be
af4381d113faafc97340eaaa008840c7fcbcc8fdsf extending the protocol in a manner we know nothing about,
af4381d113faafc97340eaaa008840c7fcbcc8fdsf or just broken. So this is now configurable: set
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <code>proxy-interim-response RFC</code> to be fully protocol
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf compliant, or <code>proxy-interim-response Suppress</code>
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf to suppress interim responses.</dd>
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf <dt>proxy-initial-not-pooled</dt>
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf <dd>If this variable is set no pooled connection will be reused
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf if the client connection is an initial connection. This avoids
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf the "proxy: error reading status line from remote server" error message
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf caused by the race condition that the backend server closed the
af4381d113faafc97340eaaa008840c7fcbcc8fdsf pooled connection after the connection check by the proxy and
af4381d113faafc97340eaaa008840c7fcbcc8fdsf before data send by the proxy reached the backend. It has to be
af4381d113faafc97340eaaa008840c7fcbcc8fdsf kept in mind that setting this variable downgrades performance,
af4381d113faafc97340eaaa008840c7fcbcc8fdsf especially with HTTP/1.0 clients.
af4381d113faafc97340eaaa008840c7fcbcc8fdsf </dd>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf </dl>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</div>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf<div class="bottomlang">
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf<p><span>Available Languages: </span><a href="/en/mod/mod_proxy_http.html" title="English">&nbsp;en&nbsp;</a></p>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf</div><div id="footer">
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf<p class="apache">Copyright 2008 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.html">Directives</a> | <a href="/faq/">FAQ</a> | <a href="/glossary.html">Glossary</a> | <a href="/sitemap.html">Sitemap</a></p></div>
2e0e3814627be5f1f08d890663cfa6c1f7671a4crpluem</body></html>