CHANGES revision 65a4e663b82f8bce28ac22ab2edfd7502de36998
48c0c81cd6fabac9d3386406d97633780365b839coar******************************************
38d2c5d41cdb5eb28668d0290b59f8c76ae2a4bfjim* PLEASE NOTE: Now that development for *
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj* mod_proxy has been folded back into *
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj* the httpd-2.1 tree, this file has *
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj* been deprecated. Proxy changes should *
9a93784d34c322d1996e8a7b794a75230eac81a4wrowe* be noted in httpd-2.x's CHANGES file. *
c4250200511e2babcf76be6da64a7f101250ab37jwoolley* This file exists for historical *
4bc630d510cef730e37b9207e145267f473b4471striker* purposes. *
a096f8d13bee05fd6ea8b9b50b6c2e818eace7d1striker******************************************
dba571e5c5a2586c7e2b382789f3250136ff7577jwoolleymod_proxy changes for httpd 2.0.29-dev
bf3d1782a29630335a1df535eb395355ab1cd154jwoolley *) don't do keepalives for sub-requests. [Ian Holsman]
0bd0176ce9f4321eeb506aa372d0bcc84befbf4cstriker *) fix up proxypass handling [Ian Holsman]
c25203fdca093d4504c51b4cd974ff60d5aa4fb1wrowe *) don't send If-Modified-Since, Cache-Control, or If-None-Match on
c25203fdca093d4504c51b4cd974ff60d5aa4fb1wrowe a subrequest [Ian Holsman]
d89c116f82699294ca744125723651c554bc5925wrowemod_proxy changes for httpd 2.0.26-dev
4214e98fc9045e5010e66f9a967bd6d68f40d342aaron *) Add New option 'HTTPProxyOverrideReturnedErrors'. By Turning the
8721697e2aece27b0e738519329f7976c72b27bfjerenkrantz Flag on, you will mask the error pages returned by the proxied
c25203fdca093d4504c51b4cd974ff60d5aa4fb1wrowe server, and will it will be handled as if your server generated
91cacb801f6c0215b38322f6d2fc58cbfedfecfbjerenkrantz the error. This change was put in so that a 404 on a included
91cacb801f6c0215b38322f6d2fc58cbfedfecfbjerenkrantz r-proxied component will act in the same manner as a 404 on a
df14f0d3a5191cdd7c4bb5b03acd135d43a6f51brbb included file. [Ian Holsman <ianh@cnet.com>]
ab71b233b3a36489e44a7b061c48293be0b17788jwoolleymod_proxy changes for httpd 2.0.25-dev
571760de5e60c0b459cb11be45507b923cd023eejwoolley *) Split proxy: space using <Proxy[Match] > directive blocks from
9180a5933673ffb1af633c255ceee029340f3b1erbb the <Directory[Match] > and <Files[Match] > blocks. Mod_proxy
bcb6e1be6041dfeb549c8ea8d37f97ad4e90a0c3rbb now bypasses the directory and files testing phase (and skips
9bd71e35f5d26d26d23fe3a677401828e842ed72wrowe the http TRACE default handler on it's own, as well). Note that
2900ab946a2d76b73a14cebfe2985d253f01c967stoddard <Location > blocks continue to be processed for proxy: requests.
a548c09e6a8ca1b059d0e93b5256c6ccb2b3c3cdrbb [William Rowe <wrowe@covalent.net>]
a548c09e6a8ca1b059d0e93b5256c6ccb2b3c3cdrbb *) apr_uri type/function namespace changes in apr_uri functions
b876b7bcf0ce3d232da723246d709e8dbbfe8762rbb [Doug MacEachern <dougm@covalent.net>]
35330e0d79ceb8027223bbb8330a381b1f989d6etrawickmod_proxy changes for httpd 2.0.23-dev
8dd4618c4709236b4ea297d7250d282e463ce2d8rbb *) break the proxy_http_handler into multiple smaller functions.
09bd86d0db1114ee23eda0a6eb76ca055877a1cftrawick [John Barbee <barbee@veribox.net>]
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb *) Fix the proxy when the origin server sends back a 100
70f6f32765cfaadd6da8de6f0fea97ddd72d8fadmanoj Continue response. [John Barbee <barbee@veribox.net>]
af4c982a7cf4515f124935f99a329744035fc699slive *) Change 'readbytes' from apr_size_t to apr_off_t due to change
af4c982a7cf4515f124935f99a329744035fc699slive in ap_get_brigade's parameters [John Barbee <barbee@veribox.net>]
af4c982a7cf4515f124935f99a329744035fc699slivemod_proxy changes for httpd 2.0.20-dev
af4c982a7cf4515f124935f99a329744035fc699slive *) Timeout added for backend connections.
af4c982a7cf4515f124935f99a329744035fc699slive [Victor Orlikowski <v.j.orlikowski@gte.net>]
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe *) Fix abort code path in proxy_http.c, similar to FTP fix.
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe [Chuck Murcko <chuck@topsail.org>]
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe *) Fix FTP ABOR command execution path.
10270f6f94b2069d0d357805c140a9897449b9ccianh [Victor Orlikowski <v.j.orlikowski@gte.net>]
5ca8e11fadb6f7a8d9d0367c1800205c99d4bcd6jerenkrantz *) FTP return code variable cleanup; fixed problem in login
5ca8e11fadb6f7a8d9d0367c1800205c99d4bcd6jerenkrantz [Chuck Murcko <chuck@topsail.org>]
dbec4658981e4f9127e8676457c28d42932be7cdtrawick *) Get PORT working again in the ftp proxy.
1b7e9aeb9867a1c94e24e8ae491d2dfcd0d225e3jerenkrantz [Victor Orlikowski <v.j.orlikowski@gte.net>]
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz *) Return result code check for FTP QUIT, after fixing
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe problems with passive connection handling.
5c9a6bc911baa7cef34d64de59af1e8d6e09c13abrianp [Victor Orlikowski <v.j.orlikowski@gte.net>]
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe *) Reorganize ap_proxy_string_read() internally to not process eos
38d2c5d41cdb5eb28668d0290b59f8c76ae2a4bfjim [Chuck Murcko <chuck@topsail.org>]
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe [Victor Orlikowski <v.j.orlikowski@gte.net>]
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe *) Remove result code check for FTP QUIT command. Some servers send
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe nothing at all back in response to QUIT.
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe [Chuck Murcko <chuck@topsail.org>]
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe [Victor Orlikowski <v.j.orlikowski@gte.net>]
38d2c5d41cdb5eb28668d0290b59f8c76ae2a4bfjimmod_proxy changes for httpd 2.0.19
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe *) Reverse previous patch since the core reverted.
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe [Chuck Murcko <chuck@topsail.org>]
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe *) Remove indirection on number of bytes to read for input filters.
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe [Chuck Murcko <chuck@topsail.org>]
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe *) Fixed a problem with directory listing corruption in the
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe PROXY_DIR filter.
53573272227ec7c6a2bb9631934aea6c9dd1469egregames [Graham Leggett <minfrin@sharp.fm>]
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe *) mod_proxy and the proxy submodules now build properly as DSOs.
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe [Graham Leggett <minfrin@sharp.fm>]
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe *) Stopped the HTTP proxy from trying to read entity bodies when there
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe wasn't one (response was 1xx, 204, 205 or 304).
53573272227ec7c6a2bb9631934aea6c9dd1469egregames [Graham Leggett <minfrin@sharp.fm>]
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe *) Made sure dates were canonicalised correctly when passed to the client
941cb476bf470040d0a33c397eb85c68d9d82d4djerenkrantz browser through the HTTP proxy.
4520f2a938626a879b33dac9fd940072b6c2bd42wrowe [Graham Leggett <minfrin@sharp.fm>]
f95a0b59eb24c631f15bd83e20c6cf823c432d83trawick *) Split each individual proxy protocol into separate modules.
f95a0b59eb24c631f15bd83e20c6cf823c432d83trawick [Graham Leggett <minfrin@sharp.fm>]
f95a0b59eb24c631f15bd83e20c6cf823c432d83trawick *) Added Max-Forwards support for all request types so as to prevent
13402b2193f52031b2acfbee2b0965e02f3f29b4wrowe [Graham Leggett <minfrin@sharp.fm>]
f95a0b59eb24c631f15bd83e20c6cf823c432d83trawick *) Fix warnings about byte count type on Darwin (connect handler).
418f39e60a288f855ec033b566744489c3bbbf39trawick [Chuck Murcko <chuck@topsail.org>]
f95a0b59eb24c631f15bd83e20c6cf823c432d83trawickmod_proxy changes for httpd 2.0.18
ddafc111b94558ef4e2d7357ceda623315566ce3slive *) IPV6 EPSV support for IPV6 in FTP proxy.
ae72c92fd41562d7c0e8627c093fcbbae4ac9ef2coar [Graham Leggett <minfrin@sharp.fm>]
93f189f1198f539d3cfa75a15b23dcde60ee35ffrbb *) FTP directory filter works now.
93f189f1198f539d3cfa75a15b23dcde60ee35ffrbb [Graham Leggett <minfrin@sharp.fm>]
a4d9e6fdcd5d2ddd93a896b42a1d607ed258c316ianh *) Fixed some thread-safety issues with the HTTP proxy in mod_proxy.
a4d9e6fdcd5d2ddd93a896b42a1d607ed258c316ianh [Graham Leggett <minfrin@sharp.fm>]
13402b2193f52031b2acfbee2b0965e02f3f29b4wrowe *) PASV FTP works now.
13402b2193f52031b2acfbee2b0965e02f3f29b4wrowe [Graham Leggett <minfrin@sharp.fm>]
38d2c5d41cdb5eb28668d0290b59f8c76ae2a4bfjim *) Reworked the line-at-a-time read from the control connection to
38d2c5d41cdb5eb28668d0290b59f8c76ae2a4bfjim workaround a stray empty bucket returned by the HTTP_IN filter.
93f189f1198f539d3cfa75a15b23dcde60ee35ffrbb [Graham Leggett <minfrin@sharp.fm>]
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz *) Stopped the CORE filter from sending off an HTTP response when a
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz CONNECT tunnel was closed.
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz [Graham Leggett <minfrin@sharp.fm>]
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz *) Fixed the poll() loop in proxy_connect.c -> it works now!!!
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz [Graham Leggett <minfrin@sharp.fm>]
38d2c5d41cdb5eb28668d0290b59f8c76ae2a4bfjim *) Converted send_dir() to ap_proxy_send_dir_filter() in proxy_ftp.c.
38d2c5d41cdb5eb28668d0290b59f8c76ae2a4bfjim [Graham Leggett <minfrin@sharp.fm>]
38d2c5d41cdb5eb28668d0290b59f8c76ae2a4bfjimmod_proxy changes for httpd 2.0.17
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz *) Major rework of ap_proxy_ftp_handler() to use filters (begone foul
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz BUFF!!!). It compiles, but is untested, and the build environment needs
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz to be fixed to include proxy_ftp.c.
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz [Graham Leggett <minfrin@sharp.fm>]
1af5c0e25a649bb298e25ddfa5418fa18bdcb107aaron *) Cleanup of dead functions within proxy_util.c.
38d2c5d41cdb5eb28668d0290b59f8c76ae2a4bfjim [Graham Leggett <minfrin@sharp.fm>]
f4cb04eb78da02a38fcdd87489dc7b660107d55fjerenkrantz *) Reworked the storage of the client socket between keepalive connections
1b3f48fd6b1ccb8745f908e40156c5a85ca3c347jerenkrantz to fix some nasty problems with the socket lasting longer than the
b05930e6008f69bd323abe0c10f81f40ffd27983brianp memory pool it was allocated from.
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe [Graham Leggett <minfrin@sharp.fm>]
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe *) Fixed bug where a hostname without a "." in it (such as "localhost")
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe would not trigger an IP address check with ProxyBlock.
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe [Graham Leggett <minfrin@sharp.fm>]
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowemod_proxy changes for httpd 2.0.16
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe *) Fixed ProxyBlock bugs with ap_proxy_http_handler() and
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe ap_proxy_connect_handler().
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe [Graham Leggett <minfrin@sharp.fm>]
6362fd5c48f6b2193f5d356a9747172101b24e91jerenkrantz *) Updated ap_proxy_connect_handler() to support APR, while
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe moving some common code between http_handler and connect_handler
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe [Graham Leggett <minfrin@sharp.fm>]
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe *) Updated mod_proxy.html docs to include v2.0 configuration.
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe [Graham Leggett <minfrin@sharp.fm>]
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe *) Fixed problem where responses without entity bodies would cause
f610c7c704235bc327dbe9b62982f5b3f8e30a77wrowe the directly following proxy keepalive request to fail.
56b2562cb4041a21bc313fde3204beabdb758800jwoolley [Graham Leggett <minfrin@sharp.fm>]
56b2562cb4041a21bc313fde3204beabdb758800jwoolleymod_proxy changes for httpd 2.0.15
56b2562cb4041a21bc313fde3204beabdb758800jwoolley *) Added support for downstream keepalives in mod_proxy.
56b2562cb4041a21bc313fde3204beabdb758800jwoolley [Graham Leggett <minfrin@sharp.fm>]
f881b8be216de36c6b964324c772450bca38a4e6trawick *) Changed mod_proxy ap_proxy_http_handler() to support APR properly.
f881b8be216de36c6b964324c772450bca38a4e6trawick [Graham Leggett <minfrin@sharp.fm>]
f881b8be216de36c6b964324c772450bca38a4e6trawick *) Fix problem where incoming response headers were not being returned
f881b8be216de36c6b964324c772450bca38a4e6trawick to the client in mod_proxy.
f881b8be216de36c6b964324c772450bca38a4e6trawick [Graham Leggett <minfrin@sharp.fm>]
b05930e6008f69bd323abe0c10f81f40ffd27983brianp *) Added X-Forwarded-For, X-Forwarded-Host and X-Forwarded-Server to
b05930e6008f69bd323abe0c10f81f40ffd27983brianp reverse proxied request headers in mod_proxy.
b05930e6008f69bd323abe0c10f81f40ffd27983brianp [Graham Leggett <minfrin@sharp.fm>]
b05930e6008f69bd323abe0c10f81f40ffd27983brianp *) replace INADDR_NONE with APR_INADDR_NONE [Ian Holsman <IanH@cnet.com>]
4c7dab038d90d7feb67ef8ddbfacc77be8c9dbf0jwoolley *) Fix problem with proxy configuration where globally set
4c7dab038d90d7feb67ef8ddbfacc77be8c9dbf0jwoolley configuration options were overridden inside virtual hosts.
4c7dab038d90d7feb67ef8ddbfacc77be8c9dbf0jwoolley [Graham Leggett <minfrin@sharp.fm>]
8c8fbb8546af54582539898be704411a60058d85trawick *) Fix ProxyReceiveBufferSize where default value was left
8c8fbb8546af54582539898be704411a60058d85trawick uninitialised.
8c8fbb8546af54582539898be704411a60058d85trawick [Graham Leggett <minfrin@sharp.fm>]
f9b8e29cfca92cf0a996e8ab17fa1a1f447cecc7stoddard *) Some small changes:
f9b8e29cfca92cf0a996e8ab17fa1a1f447cecc7stoddard - Ensured hop-by-hop headers were stripped as per
a23b1c5a74208b03884c09a6f9dd5d6c97fa6415trawick RFC2616 13.5.1.
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowe - Upgraded version code to HTTP/1.1.
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowe - Added Connection: close until Keepalives come.
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowe - Some cosmetic fixes and commenting.
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowe [Graham Leggett <minfrin@sharp.fm>]
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowemod_proxy changes for httpd 2.0.14
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowe *) removed ProxyNoCache and ProxyCacheForceCompletion config directives,
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowe since we no longer directly cache from this module
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowe [Chuck Murcko <chuck@topsail.org>]
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowe *) removed cache
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowe [Chuck Murcko <chuck@topsail.org>]
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowe *) initial rerebuild for 2.0
2fb49a1d25f38421a68d31b4cbb5d9293fdeafbewrowe [Chuck Murcko <chuck@topsail.org>]