1
0
mirror of https://github.com/apache/httpd.git synced 2025-08-08 15:02:10 +03:00

First try the reverse proxies. If there is no worker defined for

requested uri use the forward worker, but only for PROXYREQ_PROXY
requests.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@105048 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Mladen Turk
2004-09-09 13:51:08 +00:00
parent 44d1474f1e
commit 4f9be531d7

View File

@@ -1237,16 +1237,6 @@ PROXY_DECLARE(int) ap_proxy_pre_request(proxy_worker **worker,
{
int access_status;
if (r->proxyreq == PROXYREQ_PROXY) {
if (conf->forward) {
*balancer = NULL;
*worker = conf->forward;
access_status = OK;
}
else
access_status = DECLINED;
return access_status;
}
access_status = proxy_run_pre_request(worker, balancer, r, conf, url);
if (access_status == DECLINED && *balancer == NULL) {
*worker = ap_proxy_get_worker(r->pool, conf, *url);
@@ -1254,8 +1244,13 @@ PROXY_DECLARE(int) ap_proxy_pre_request(proxy_worker **worker,
*balancer = NULL;
access_status = OK;
}
else
access_status = DECLINED;
else if (r->proxyreq == PROXYREQ_PROXY) {
if (conf->forward) {
*balancer = NULL;
*worker = conf->forward;
access_status = OK;
}
}
}
else if (access_status == DECLINED && balancer != NULL) {
/* All the workers are busy */