this patch would allow caching of subrequests if required.
does anyone see any negatives of moving the quick handler so that
it would be executed by subrequests?
if not I'll apply this soon.
--
modules\http\http_request.c
Index: server/request.c
===================================================================
RCS file: /home/cvs/httpd-2.0/server/request.c,v
retrieving revision 1.90
diff -u -r1.90 request.c
--- server/request.c 2 Jan 2002 21:58:43 -0000 1.90
+++ server/request.c 14 Jan 2002 19:00:20 -0000
@@ -143,6 +143,16 @@
int file_req = (r->main && r->filename);
int access_status;
+ access_status = ap_run_quick_handler(r);
+ if (access_status != DECLINED) {
+ if ( access_status == OK ) {
+ return DONE;
+ }
+ else {
+ return access_status;
+ }
+ }
+
/* Ignore embedded %2F's in path for proxy requests */
if (!r->proxyreq && r->parsed_uri.path) {
access_status = ap_unescape_url(r->parsed_uri.path);
Index: modules/http/http_request.c
===================================================================
RCS file: /home/cvs/httpd-2.0/modules/http/http_request.c,v
retrieving revision 1.122
diff -u -r1.122 http_request.c
--- modules/http/http_request.c 14 Dec 2001 03:29:13 -0000 1.122
+++ modules/http/http_request.c 14 Jan 2002 19:00:20 -0000
@@ -285,16 +285,13 @@
* to enable the quick handler to make decisions based on config
* directives in Location blocks.
*/
- access_status = ap_run_quick_handler(r);
- if (access_status == DECLINED) {
- access_status = ap_process_request_internal(r);
- if (access_status == OK) {
- access_status = ap_invoke_handler(r);
- }
- else if (access_status == DONE) {
- /* e.g., something not in storage like TRACE */
- access_status = OK;
- }
+ access_status = ap_process_request_internal(r);
+ if (access_status == OK) {
+ access_status = ap_invoke_handler(r);
+ }
+ else if (access_status == DONE) {
+ /* e.g., something not in storage like TRACE */
+ access_status = OK;
}
if (access_status == OK) {