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

428 Commits

Author SHA1 Message Date
Mladen Turk
44d1474f1e Add PROXY_WORKER_IGNORE_ERRORS flags that
disables puting the entire worker in retry mode, cause
for forward workers the remote is not fixed.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@105047 13f79535-47bb-0310-9956-ffa450edef68
2004-09-09 13:15:40 +00:00
Mladen Turk
bea1cc4147 Add sockaddr to proxy_conn_rec. Using the workers address
is unsafe for forward proxy workers, cause unlike reverse
proxies the forward can have each connection with different
remote address.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@105046 13f79535-47bb-0310-9956-ffa450edef68
2004-09-09 13:03:06 +00:00
Mladen Turk
5593ebbfb2 Add 'default' foward proxy worker to the proxy_server_conf.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@105043 13f79535-47bb-0310-9956-ffa450edef68
2004-09-09 10:22:19 +00:00
Mladen Turk
2a80ab7e07 Untabify the source.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104813 13f79535-47bb-0310-9956-ffa450edef68
2004-08-26 06:57:16 +00:00
Mladen Turk
a224ba752c Add pool used for allocating proxy_server_conf to that struct.
It will be used for dynamic configuration, to ensure that dynamic
params has the same lifetime as the config has.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104811 13f79535-47bb-0310-9956-ffa450edef68
2004-08-26 06:49:22 +00:00
Mladen Turk
00005d8082 Document new API functions.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104798 13f79535-47bb-0310-9956-ffa450edef68
2004-08-25 11:22:54 +00:00
Mladen Turk
c5eb96b6cb Remove the tabs from code.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104797 13f79535-47bb-0310-9956-ffa450edef68
2004-08-25 11:21:15 +00:00
Graham Leggett
bf820c3251 Fix some compiler warnings in proxy
PR:
Obtained from:
Submitted by:	Geoffrey Young <geoff@modperlcookbook.org>
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104708 13f79535-47bb-0310-9956-ffa450edef68
2004-08-18 13:34:17 +00:00
William A. Rowe Jr
c42bcbc7ba Added proxy status for conf, and elected member to runtime worker
Added mod_status extension for displaying runtime
status informations for load balancer.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104627 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 23:30:17 +00:00
William A. Rowe Jr
4d5f6895d1 Implement the worker retry functionality.
It uses either worker->retry option or default 60 second retry
that is on each revolution extended by another 60 seconds.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104619 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 23:05:59 +00:00
William A. Rowe Jr
906f2c3d2d Shared memory support. The shared memory is inside
apache scoreboard. If it ever gets back ported we could use it on 2.0

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104617 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 23:02:53 +00:00
William A. Rowe Jr
b8a176667f Add route and redirect to worker so they can be set trough configuration.
Add worker status flag definitions.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104611 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:56:51 +00:00
William A. Rowe Jr
3698b4588c Fix structure element typo.
Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104609 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:55:00 +00:00
William A. Rowe Jr
7d605dabeb Fix some config checking params.
Added route and route redirect to the runtime worker.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104606 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:48:13 +00:00
William A. Rowe Jr
f99f785c89 Change the scheme handler hook to include worker.
We will probably need the balancer too, but that can wait for now.
Other undocumented changes (shame,shame) in proxy_util.c

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104600 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:41:02 +00:00
William A. Rowe Jr
ae18ec32a1 Added close_on_recycle flags for creatin connections.
This flag enables to distinguish between connection types.
Also added a pool cleanup bound to connection pool that recycles
the connection when client disconnects from server.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104599 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:39:02 +00:00
William A. Rowe Jr
6cc26c2656 Added acquire and release connection functions.
The acquire pulls the connection from the pool.
The release returns the connection to the pool.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104598 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:37:08 +00:00
William A. Rowe Jr
62ccd6ca6a Added ap_proxy_connection_create function that makes
conn_rec for opened connection. It is used bt http(s) and ftp for
bounding the backend connection to client connection with the same id's.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104597 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:36:28 +00:00
William A. Rowe Jr
5faf9c3c49 Added KeepAlive worker option.
The scheme handler will override this setting if required, depending on the
protocol itself and keepalive_set flag.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104596 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:35:19 +00:00
William A. Rowe Jr
5ead791f0e Add ap_proxy_connect_backend that will replace
ap_proxy_connect_to_backend. It uses worker params for setting socket
options and checks for conection's connect status.
It works both on empty and acquired connections.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104595 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:34:26 +00:00
William A. Rowe Jr
6c7efc889b Added iobuffersize and receivebuffersize to be worker specific.
As for timeout their default value is from proxy_conf.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104594 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:33:07 +00:00
William A. Rowe Jr
a603a36021 Added timeout_set for worker. Each worker can have a different timeout
the ProxyTimout sets. Also changed proxy_conf's timeout_set to int.

Use timeout_set for worker inherited from ProxyTimeout but overridable
using timout=xxx

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104592 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:31:46 +00:00
William A. Rowe Jr
c25b89a720 Added acquire timeout for obtaining resources from reslist.
The timeout is in milliseconds to enable quick return in case the
reslist is exceded the maximum number of connections.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104591 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:30:06 +00:00
William A. Rowe Jr
66239a82ef Remove proxy_mdule_conf.
We will change the scheme hook api to include the worker.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104590 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:28:59 +00:00
William A. Rowe Jr
3cc146e42b Remove proxy_conn struct and add it's params to proxy_conn_rec.
Use named structure type declarations.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104589 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:27:34 +00:00
William A. Rowe Jr
fd82a02ec8 Add worker timeout inherited from ProxyTimeout.
Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104588 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:16:27 +00:00
William A. Rowe Jr
c460a77e84 Make proxy_conn always accesible for preforked MPM and
APR_HAS_THREADS enabled.

Add init_conn_worker for creating apr_reslist that maintains connection
pool. For prefork mpm's use the single connection container.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104585 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:13:50 +00:00
William A. Rowe Jr
9e6393182e Added ap_proxy_determine_connection.
It will be used both for http and ajp handlers.
Started writing apr_reslist connection pool.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104582 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:05:20 +00:00
William A. Rowe Jr
f9596ca564 Add ap_proxy_pre_request API function.
It calls the actual module pre_request hook if present

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104578 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 22:00:47 +00:00
William A. Rowe Jr
01f7f51f5b Add pre_request and post_request proxy hooks.
They will be mainly used for loadbalancers for finding and maintaining workers.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104576 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 21:56:38 +00:00
William A. Rowe Jr
d38ce6988e Added API for creating balancers.
Added property  setter for balancers.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104572 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 21:44:23 +00:00
William A. Rowe Jr
8dda80bccc Move worker params parsing to a separate function.
The same will be used for creating ProxyPass connection pools.

Added ttl param to worker for maintaining reslist.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104570 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 21:29:57 +00:00
William A. Rowe Jr
e881f5cc72 Move min,smax and hmax params to worker, so they can be set
before the connection pool is created

Added init_conn_pool to worker.
Connection pool will either use reslist (if thread number > 1)  or single connection.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104569 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 21:27:57 +00:00
William A. Rowe Jr
55bdb14eb5 Use API instead directly obtaining worker and balancer.
Add BalancerStickySession and BalanceMember directives.
Add workers and balancers to create and merge config.

Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104567 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 21:25:15 +00:00
William A. Rowe Jr
cbdfbe5cbb Add initial structures for connection pool and load balancer.
Submitted by: mturk


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104566 13f79535-47bb-0310-9956-ffa450edef68
2004-08-11 21:20:07 +00:00
Graham Leggett
0fa986980f Fixes the build of proxy on Windows. Since the proxy_module is declared
as extern using AP_MODULE_DECLARE_DATA that expands to dllexport, there
is a LNK2001 error when building proxy_http.
PR:
Obtained from:		Mladen Turk <mturk@apache.org>
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104469 13f79535-47bb-0310-9956-ffa450edef68
2004-08-04 00:32:07 +00:00
André Malo
f8635f92c7 style
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104169 13f79535-47bb-0310-9956-ffa450edef68
2004-07-04 22:47:49 +00:00
Nick Kew
b6e89d86f7 Fix for multiple proxy bugs - review please:
#10722  Reverse proxying cookies
#15207  Proxy passing canonicalised URIs to backend
#16812  Case-insensitivity of proxypassreverse
#19317  Canonicalised URI causing infinite loop
#20372  AllowEncodedSlashes
May also fix 13577 (untested)

This is really two fixes: 10722 and 15207; the others are trivial consequences.
To make review easier, the simpler fix (#15207) is entirely contained in
#ifdef FIX_15207 (new code) and
#ifndef FIX_15207 (removed code)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@104070 13f79535-47bb-0310-9956-ffa450edef68
2004-06-29 06:37:21 +00:00
André Malo
a688f06b19 fix name of The Apache Software Foundation
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102618 13f79535-47bb-0310-9956-ffa450edef68
2004-02-09 20:31:03 +00:00
André Malo
3d75c8c079 fix copyright dates according to the first check in
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102572 13f79535-47bb-0310-9956-ffa450edef68
2004-02-08 12:27:14 +00:00
André Malo
4f02cb1e18 apply Apache License, Version 2.0
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102525 13f79535-47bb-0310-9956-ffa450edef68
2004-02-06 22:58:42 +00:00
André Malo
fb07607180 update license to 2004.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102135 13f79535-47bb-0310-9956-ffa450edef68
2004-01-01 13:26:26 +00:00
André Malo
742af25096 finished that boring job:
update license to 2003.

Happy New Year! ;-))


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98573 13f79535-47bb-0310-9956-ffa450edef68
2003-02-03 17:53:28 +00:00
Jim Jagielski
62f1105335 Haven't heard any vetoes regarding this, so might as well fold it
in. Not too happy about cluttering up the list of directives either.
But, at least, it allows 2.0 to proxy stupid IIS as much as 1.3.
Docs to come soon.
PR:
Obtained from:
Submitted by:
Reviewed by:


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97202 13f79535-47bb-0310-9956-ffa450edef68
2002-10-14 14:11:24 +00:00
Jeff Trawick
97b87390dd add PROXY_OPTIONAL_HOOK() macro for modules that want to
optionally provide a mod_proxy hook


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96013 13f79535-47bb-0310-9956-ffa450edef68
2002-07-11 18:45:22 +00:00
William A. Rowe Jr
f8511d81d8 No crutches, people!
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95854 13f79535-47bb-0310-9956-ffa450edef68
2002-06-23 06:06:25 +00:00
William A. Rowe Jr
3f6aa521eb Cleanup proxy timeouts a bit to remove emits and make consistent to
vhost timeout.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95674 13f79535-47bb-0310-9956-ffa450edef68
2002-06-14 17:14:57 +00:00
Jeff Trawick
9a1842b70c get basic HTTP proxy working on EBCDIC machines
(I would bet that there is more work to do throughout proxy, but at least
it can serve some pages now)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94811 13f79535-47bb-0310-9956-ffa450edef68
2002-04-26 12:29:38 +00:00
Doug MacEachern
9fb5b384d7 PR:
Obtained from:
Submitted by:	Daniel Lopez <daniel@covalent.net>
Reviewed by:	dougm, rbb
add optional fixup hook to proxy


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94544 13f79535-47bb-0310-9956-ffa450edef68
2002-04-08 18:38:56 +00:00
Doug MacEachern
1138615486 fix ProxyPass when frontend is https and backend is http
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94515 13f79535-47bb-0310-9956-ffa450edef68
2002-04-07 03:37:35 +00:00