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