Download | Plain Text | Line Numbers
diff -Naur httpd-2.4.10.orig/modules/proxy/mod_proxy.c httpd-2.4.10/modules/proxy/mod_proxy.c
--- httpd-2.4.10.orig/modules/proxy/mod_proxy.c 2014-06-21 15:47:30.000000000 +0200
+++ httpd-2.4.10/modules/proxy/mod_proxy.c 2014-11-18 15:45:08.269718560 +0100
@@ -2632,12 +2632,16 @@
*/
worker = (proxy_worker *)conf->workers->elts;
for (i = 0; i < conf->workers->nelts; i++, worker++) {
+ if (!strncasecmp(worker->s->name, "proxy://forward", 15)
+ || !strncasecmp(worker->s->name, "proxy://reverse", 15))
+ continue;
ap_proxy_initialize_worker(worker, s, conf->pool);
}
/* Create and initialize forward worker if defined */
if (conf->req_set && conf->req) {
- proxy_worker *forward;
- ap_proxy_define_worker(p, &forward, NULL, NULL, "http://www.apache.org", 0);
+ proxy_worker *forward = ap_proxy_get_worker(p, NULL, conf, "proxy://forward");
+ if (!forward)
+ ap_proxy_define_worker(p, &forward, NULL, NULL, "http://www.apache.org", 0);
conf->forward = forward;
PROXY_STRNCPY(conf->forward->s->name, "proxy:forward");
PROXY_STRNCPY(conf->forward->s->hostname, "*");
@@ -2655,7 +2659,9 @@
conf->forward->s->is_address_reusable = 0;
}
if (!reverse) {
- ap_proxy_define_worker(p, &reverse, NULL, NULL, "http://www.apache.org", 0);
+ reverse = ap_proxy_get_worker(p, NULL, conf, "proxy://reverse");
+ if (!reverse)
+ ap_proxy_define_worker(p, &reverse, NULL, NULL, "http://www.apache.org", 0);
PROXY_STRNCPY(reverse->s->name, "proxy:reverse");
PROXY_STRNCPY(reverse->s->hostname, "*");
PROXY_STRNCPY(reverse->s->scheme, "*");