⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mod_proxy.html.en

📁 apache的软件linux版本
💻 EN
📖 第 1 页 / 共 4 页
字号:
      general proxypass directive.</p>    </div>    <p>When used inside a <code class="directive"><a href="../mod/core.html#location">&lt;Location&gt;</a></code> section, the first argument is omitted and the local    directory is obtained from the <code class="directive"><a href="../mod/core.html#location">&lt;Location&gt;</a></code>.</p>    <div class="warning">The <code class="directive"><a href="#proxyrequests">ProxyRequests</a></code> directive should    usually be set <strong>off</strong> when using    <code class="directive">ProxyPass</code>.</div>    <p>If you require a more flexible reverse-proxy configuration, see the    <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> directive with the    <code>[P]</code> flag.</p></div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="ProxyPassReverse" id="ProxyPassReverse">ProxyPassReverse</a> <a name="proxypassreverse" id="proxypassreverse">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Adjusts the URL in HTTP response headers sent from a reverseproxied server</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyPassReverse [<var>path</var>] <var>url</var></code></td></tr><tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host, directory</td></tr><tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr></table>    <p>This directive lets Apache adjust the URL in the <code>Location</code>,    <code>Content-Location</code> and <code>URI</code> headers on HTTP redirect    responses. This is essential when Apache is used as a reverse proxy to avoid    by-passing the reverse proxy because of HTTP redirects on the backend    servers which stay behind the reverse proxy.</p>    <p>Only the HTTP response headers specifically mentioned above    will be rewritten.  Apache will not rewrite other response    headers, nor will it rewrite URL references inside HTML pages.    This means that if the proxied content contains absolute URL    references, they will by-pass the proxy.  A third-party module    that will look inside the HTML and rewrite URL references is Nick    Kew's <a href="http://www.webthing.com/software/mod_proxy_html/">mod_proxy_html</a>.</p>    <p><var>path</var> is the name of a local virtual path. <var>url</var> is a    partial URL for the remote server - the same way they are used for the    <code class="directive"><a href="#proxypass">ProxyPass</a></code> directive.</p>    <p>For example, suppose the local server has address    <code>http://example.com/</code>; then</p>    <div class="example"><p><code>      ProxyPass         /mirror/foo/ http://backend.example.com/<br />      ProxyPassReverse  /mirror/foo/ http://backend.example.com/    </code></p></div>    <p>will not only cause a local request for the    <code>http://example.com/mirror/foo/bar</code> to be internally converted    into a proxy request to <code>http://backend.example.com/bar</code>    (the functionality <code>ProxyPass</code> provides here). It also takes care    of redirects the server <code>backend.example.com</code> sends: when    <code>http://backend.example.com/bar</code> is redirected by him to    <code>http://backend.example.com/quux</code> Apache adjusts this to    <code>http://example.com/mirror/foo/quux</code> before forwarding the HTTP    redirect response to the client. Note that the hostname used for    constructing the URL is chosen in respect to the setting of the <code class="directive"><a href="../mod/core.html#usecanonicalname">UseCanonicalName</a></code> directive.</p>    <p>Note that this <code class="directive">ProxyPassReverse</code> directive can    also be used in conjunction with the proxy pass-through feature    (<code>RewriteRule ...  [P]</code>) from <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>    because its doesn't depend on a corresponding <code class="directive"><a href="#proxypass">ProxyPass</a></code> directive.</p>    <p>When used inside a <code class="directive"><a href="../mod/core.html#location">&lt;Location&gt;</a></code> section, the first argument is omitted and the local    directory is obtained from the <code class="directive"><a href="../mod/core.html#location">&lt;Location&gt;</a></code>.</p></div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="ProxyPreserveHost" id="ProxyPreserveHost">ProxyPreserveHost</a> <a name="proxypreservehost" id="proxypreservehost">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Use incoming Host HTTP request header for proxyrequest</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyPreserveHost On|Off</code></td></tr><tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>ProxyPreserveHost Off</code></td></tr><tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr><tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr><tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache 2.0.31 and later.</td></tr></table>    <p>When enabled, this option will pass the Host: line from the incoming    request to the proxied host, instead of the hostname specified in the    proxypass line.</p>    <p>This option should normally be turned <code>Off</code>. It is mostly     useful in special configurations like proxied mass name-based virtual    hosting, where the original Host header needs to be evaluated by the    backend server.</p></div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="ProxyReceiveBufferSize" id="ProxyReceiveBufferSize">ProxyReceiveBufferSize</a> <a name="proxyreceivebuffersize" id="proxyreceivebuffersize">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Network buffer size for proxied HTTP and FTPconnections</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyReceiveBufferSize <var>bytes</var></code></td></tr><tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>ProxyReceiveBufferSize 0</code></td></tr><tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr><tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr></table>    <p>The <code class="directive">ProxyReceiveBufferSize</code> directive specifies an    explicit (TCP/IP) network buffer size for proxied HTTP and FTP connections,    for increased throughput. It has to be greater than <code>512</code> or set    to <code>0</code> to indicate that the system's default buffer size should    be used.</p>    <div class="example"><h3>Example</h3><p><code>      ProxyReceiveBufferSize 2048    </code></p></div></div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="ProxyRemote" id="ProxyRemote">ProxyRemote</a> <a name="proxyremote" id="proxyremote">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Remote proxy used to handle certain requests</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyRemote <var>match</var> <var>remote-server</var></code></td></tr><tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr><tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr></table>    <p>This defines remote proxies to this proxy. <var>match</var> is either the    name of a URL-scheme that the remote server supports, or a partial URL    for which the remote server should be used, or <code>*</code> to indicate    the server should be contacted for all requests. <var>remote-server</var> is    a partial URL for the remote server. Syntax:</p>    <div class="example"><p><code>      <dfn>remote-server</dfn> =          <var>scheme</var>://<var>hostname</var>[:<var>port</var>]    </code></p></div>    <p><var>scheme</var> is effectively the protocol that should be used to    communicate with the remote server; only <code>http</code> is supported by    this module.</p>    <div class="example"><h3>Example</h3><p><code>      ProxyRemote http://goodguys.com/ http://mirrorguys.com:8000<br />      ProxyRemote * http://cleversite.com<br />      ProxyRemote ftp http://ftpproxy.mydomain.com:8080    </code></p></div>    <p>In the last example, the proxy will forward FTP requests, encapsulated    as yet another HTTP proxy request, to another proxy which can handle    them.</p>    <p>This option also supports reverse proxy configuration - a backend    webserver can be embedded within a virtualhost URL space even if that    server is hidden by another forward proxy.</p></div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="ProxyRemoteMatch" id="ProxyRemoteMatch">ProxyRemoteMatch</a> <a name="proxyremotematch" id="proxyremotematch">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Remote proxy used to handle requests matched by regularexpressions</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyRemoteMatch <var>regex</var> <var>remote-server</var></code></td></tr><tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr><tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr></table>    <p>The <code class="directive">ProxyRemoteMatch</code> is identical to the    <code class="directive"><a href="#proxyremote">ProxyRemote</a></code> directive, except the    first argument is a regular expression match against the requested URL.</p></div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="ProxyRequests" id="ProxyRequests">ProxyRequests</a> <a name="proxyrequests" id="proxyrequests">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Enables forward (standard) proxy requests</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyRequests On|Off</code></td></tr><tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>ProxyRequests Off</code></td></tr><tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr><tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr></table>    <p>This allows or prevents Apache from functioning as a forward proxy    server. (Setting ProxyRequests to <code>Off</code> does not disable use of    the <code class="directive"><a href="#proxypass">ProxyPass</a></code> directive.)</p>    <p>In a typical reverse proxy configuration, this option should be set to    <code>Off</code>.</p>    <p>In order to get the functionality of proxying HTTP or FTP sites, you    need also <code class="module"><a href="../mod/mod_proxy_http.html">mod_proxy_http</a></code> or <code class="module"><a href="../mod/mod_proxy_ftp.html">mod_proxy_ftp</a></code>    (or both) present in the server.</p>    <div class="warning"><h3>Warning</h3>      <p>Do not enable proxying with <code class="directive"><a href="#proxyrequests">ProxyRequests</a></code> until you have <a href="#access">secured your server</a>.  Open proxy servers are dangerous      both to your network and to the Internet at large.</p>    </div></div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="ProxyTimeout" id="ProxyTimeout">ProxyTimeout</a> <a name="proxytimeout" id="proxytimeout">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Network timeout for proxied requests</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyTimeout <var>seconds</var></code></td></tr><tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>ProxyTimeout 300</code></td></tr><tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr><tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr><tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache 2.0.31 and later</td></tr></table>    <p>This directive allows a user to specifiy a timeout on proxy requests.    This is useful when you have a slow/buggy appserver which hangs, and you    would rather just return a timeout and fail gracefully instead of waiting    however long it takes the server to return.</p></div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="ProxyVia" id="ProxyVia">ProxyVia</a> <a name="proxyvia" id="proxyvia">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Information provided in the <code>Via</code> HTTP responseheader for proxied requests</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ProxyVia On|Off|Full|Block</code></td></tr><tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>ProxyVia Off</code></td></tr><tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr><tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_proxy</td></tr></table>    <p>This directive controls the use of the <code>Via:</code> HTTP    header by the proxy. Its intended use is to control the flow of of    proxy requests along a chain of proxy servers.  See <a href="http://www.ietf.org/rfc/rfc2616.txt">RFC 2616</a> (HTTP/1.1), section    14.45 for an explanation of <code>Via:</code> header lines.</p>    <ul>    <li>If set to <code>Off</code>, which is the default, no special processing    is performed. If a request or reply contains a <code>Via:</code> header,    it is passed through unchanged.</li>    <li>If set to <code>On</code>, each request and reply will get a    <code>Via:</code> header line added for the current host.</li>    <li>If set to <code>Full</code>, each generated <code>Via:</code> header    line will additionally have the Apache server version shown as a    <code>Via:</code> comment field.</li>    <li>If set to <code>Block</code>, every proxy request will have all its    <code>Via:</code> header lines removed. No new <code>Via:</code> header will    be generated.</li>    </ul></div></div><div class="bottomlang"><p><span>Available Languages: </span><a href="../en/mod/mod_proxy.html" title="English">&nbsp;en&nbsp;</a></p></div><div id="footer"><p class="apache">Copyright 2007 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><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></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -