From 550d8e8e6ccef95a119bc265101792b0475a7aa0 Mon Sep 17 00:00:00 2001
From: Daniel Baumann TTL in seconds for how long DNS resolutions of the backend address are cached.
+ -1 means until restart of Apache httpd. This directive is equivalent to will cause a local request for
The URL argument must be parsable as a URL before regexp
- substitutions (as well as after). This limits the matches you can use.
- For instance, if we had used in our previous example, it would fail with a syntax error
- at server startup. This is a bug (PR 46665 in the ASF bugzilla),
- and the workaround is to reformulate the match: The timeout
- ProxyTimeout
Connection timeout in seconds.
+ Socket timeout in seconds.
The number of seconds Apache httpd waits for data sent by / to the backend.
+ ttl
@@ -1425,6 +1425,11 @@ ProxyPass "/mirror/foo" "http://backend.example.com"
interfering with the authorizations that are to be enforced in by the Apache httpd.
@@ -1699,6 +1704,9 @@ ProxyPassReverse "/mirror/foo/" "https://backend.example.com/"
addressttl
+ -1
+ Context: server config, virtual host, directory Status: Extension
+Module: mod_proxy Compatibility: Since 2.4.47 the key=value Parameters are honored
+when the url parameter contains backreference(s) (see note below).
+ ProxyPass
but makes use of regular expressions instead of simple prefix matching. The
@@ -1718,18 +1726,7 @@ ProxyPassReverse "/mirror/foo/" "https://backend.example.com/"
http://example.com/foo/bar.gif
to be internally converted
into a proxy request to http://backend.example.com/foo/bar.gif
.Note
- ProxyPassMatch "^(/.*\.gif)$" "http://backend.example.com:8000$1"
- ProxyPassMatch "^/(.*\.gif)$" "http://backend.example.com:8000/$1"
-
- !
directive is useful in situations where you don't want
to reverse-proxy a subdirectory.
key=value
Parameters versus url with backreference(s)Since Apache HTTP Server 2.4.47, the key=value
Parameters
+ are no longer ignored in a ProxyPassMatch
using
+ an url with backreference(s). However to keep the existing
+ behavior regarding reuse/keepalive of backend connections (which were
+ never reused before for these URLs), the parameter enablereuse
+ (or disablereuse) default to off
(resp. on
)
+ in this case. Setting enablereuse=on
explicitely allows to
+ reuse connections unless some backreference(s) belong in
+ the authority
part (hostname and/or port) of the url
+ (this condition is enforced since Apache HTTP Server 2.4.55, and produces
+ a warning at startup because these URLs are not reusable per se).
Description: | Remote proxy used to handle certain requests |
---|---|
Syntax: | ProxyRemote match remote-server |
Syntax: | ProxyRemote match remote-server [username:password] |
Context: | server config, virtual host |
Status: | Extension |
Module: | mod_proxy |
Compatibility: | The optional third argument is usable only in httpd 2.4.59 and later. |
This defines remote proxies to this proxy. match is either the name of a URL-scheme that the remote server supports, or a partial URL @@ -1958,16 +1970,25 @@ ProxyRemote "ftp" "http://ftpproxy.mydomain:8080" webserver can be embedded within a virtualhost URL space even if that server is hidden by another forward proxy.
+An optional third argument username:password may be + given, which defines the Basic authentication credentials to pass + to the configured remote proxy. The credentials will always be + sent without first waiting for the remote proxy to send a Basic + authentication challenge. The Proxy-Chain-Auth environment + variable has no effect if this argument is used.
+ +Description: | Remote proxy used to handle requests matched by regular expressions |
---|---|
Syntax: | ProxyRemoteMatch regex remote-server |
Syntax: | ProxyRemoteMatch regex remote-server [username:password] |
Context: | server config, virtual host |
Status: | Extension |
Module: | mod_proxy |
Compatibility: | The optional third argument is usable only in httpd 2.4.59 and later. |
The ProxyRemoteMatch
is identical to the
ProxyRemote
directive, except that
@@ -2164,7 +2185,7 @@ var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_proxy.html';
}
})(window, document);
//-->