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