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