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