1
0
mirror of https://github.com/apache/httpd.git synced 2026-10-23 22:49:01 +03:00
Commit Graph

884 Commits

Author SHA1 Message Date
Jim Jagielski
09c3cbe87b Fold in ProxyPassMatch directive with docs. Support
full regex substitution but also allow for "simple"
cases (ala JkMount) to work as well.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@537599 13f79535-47bb-0310-9956-ffa450edef68
2007-05-13 15:28:29 +00:00
Jim Jagielski
5fdd230cc1 Add regex pattern matching to ProxyPass, allowing,
for example:

   ProxyPass ~ \.gif balancer://imagecluster




git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@537429 13f79535-47bb-0310-9956-ffa450edef68
2007-05-12 14:12:24 +00:00
Jim Jagielski
1c8f89ea65 Abstract out (kinda) MSG_PEEK. This way when we
actually update APR and apr_socket_recvfrom()
to know about APR_MSG_OOB, APR_MSG_PEEK, etc...
this code won't need to be adjusted. Also,
make nicer for 2.2 backport.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@535354 13f79535-47bb-0310-9956-ffa450edef68
2007-05-04 19:12:38 +00:00
Ruediger Pluem
9d24ba2573 * Rework the error handling logic to make it more readable.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@534031 13f79535-47bb-0310-9956-ffa450edef68
2007-05-01 12:17:30 +00:00
Jeff Trawick
8b9efbf9ca HTTP proxy ProxyErrorOverride: Leave 1xx and 3xx responses alone. Only
processing of error responses (4xx, 5xx) will be altered.

PR: 39245

This is based on a patch submitted by Bart van der Schans <schans hippo.nl>
and tweaked slightly by me based on discussions on dev@ since April 2006.
I think rpleum was the first to mention the 1xx issue.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@527969 13f79535-47bb-0310-9956-ffa450edef68
2007-04-12 15:07:11 +00:00
Guenter Knauf
47fff8d790 removed obsolete -prefix; minor cosmetic changes.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@521264 13f79535-47bb-0310-9956-ffa450edef68
2007-03-22 13:45:54 +00:00
Jean-Frederic Clere
d3858a5012 Make sure that we are not resending if we have received something from Tomcat.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@518938 13f79535-47bb-0310-9956-ffa450edef68
2007-03-16 11:26:33 +00:00
Joe Orton
193a30eea0 * modules/proxy/ajp_msg.c (ajp_msg_dump, ajp_msg_check_header,
asj_msg_copy): Fix format string warnings on x86_64.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@510522 13f79535-47bb-0310-9956-ffa450edef68
2007-02-22 14:12:14 +00:00
Nick Kew
d14f70a89f Return METHOD_NOT_ALLOWED, not FORBIDDEN, to a TRACE request when
TraceEnable is Off.  This agrees with our documentation, and with
our Allow: header in response to OPTIONS.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@507526 13f79535-47bb-0310-9956-ffa450edef68
2007-02-14 13:34:38 +00:00
Nick Kew
45c507dd7c Patch for PR#11540 (submitted by Stuart Children)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@507516 13f79535-47bb-0310-9956-ffa450edef68
2007-02-14 12:56:49 +00:00
Jim Jagielski
c9d888295d Change common but incorrect usage of 'depreciated'
for 'deprecated'


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@504892 13f79535-47bb-0310-9956-ffa450edef68
2007-02-08 13:46:14 +00:00
Bradley Nicholes
ba4156cadd Implement a BASEDIR build environment variable to allow the NetWare build to relocate the install files
Submitted by: Guenter Knauf <fuankg apache org>

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@502051 13f79535-47bb-0310-9956-ffa450edef68
2007-01-31 23:55:44 +00:00
Justin Erenkrantz
df0aa883d5 Re-add "proxy-sendextracrlf" first introduced in r157478 and silently removed
in r219224.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@495808 13f79535-47bb-0310-9956-ffa450edef68
2007-01-13 01:02:46 +00:00
William A. Rowe Jr
1fc3b01590 Embed the .manifest files of all httpd binaries as a post-build
operation.  This ensures the exported (Studio 97 generated) .mak
files create a usable Apache directly from the VC 8 (Studio 2005)
command line environment.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@495126 13f79535-47bb-0310-9956-ffa450edef68
2007-01-11 05:37:20 +00:00
Ruediger Pluem
4f83ebed74 * Handle request bodies larger than 2 GB by converting the Content-Length
header string of the request correctly to apr_off_t.

PR: 40883


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@486320 13f79535-47bb-0310-9956-ffa450edef68
2006-12-12 21:22:36 +00:00
Jim Jagielski
e4c8e34188 Isolate the unlock return vals
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@484978 13f79535-47bb-0310-9956-ffa450edef68
2006-12-09 13:47:56 +00:00
Jim Jagielski
bf5a6bc8e5 Fix compile warning:
mod_proxy_balancer.c:537: warning: unused variable 'rv'



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@484794 13f79535-47bb-0310-9956-ffa450edef68
2006-12-08 21:38:40 +00:00
Jim Jagielski
3b5d5bf319 Failure to unlock is very nasty, so log it to help
with troubleshooting.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@484792 13f79535-47bb-0310-9956-ffa450edef68
2006-12-08 21:37:08 +00:00
Jim Jagielski
ba2a767fe6 We are doing nothing here... but keep the stubs
in case we ever do.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@484789 13f79535-47bb-0310-9956-ffa450edef68
2006-12-08 21:29:20 +00:00
Jim Jagielski
792dfe200b Log when the lock fails.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@484787 13f79535-47bb-0310-9956-ffa450edef68
2006-12-08 21:26:40 +00:00
Jim Jagielski
83a044b23a No need for each ind lb method to increment the elected
element. Do so from the main calling func.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@484783 13f79535-47bb-0310-9956-ffa450edef68
2006-12-08 21:13:01 +00:00
Ruediger Pluem
27f7eda663 * Ensure that at least scheme://hostname[:port] matches between worker and URL
when trying to find the worker that fits best to the given URL.

PR: 40910


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@481901 13f79535-47bb-0310-9956-ffa450edef68
2006-12-03 21:24:43 +00:00
Mladen Turk
3d180c45a6 Add alternate is_socket_connected by using APR functions.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@473278 13f79535-47bb-0310-9956-ffa450edef68
2006-11-10 09:15:21 +00:00
Mladen Turk
e22c26b53b Remove alternate is_socket_connected detection.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@473276 13f79535-47bb-0310-9956-ffa450edef68
2006-11-10 09:12:57 +00:00
Ruediger Pluem
196a6e711e * Assign rv in the if statement to return the correct error code and
more important an error code at all, as currently APR_SUCCESS is returned
  in the error case.

PR: 40865
Submitted by: Andrew Rucker Jones <arjones simultan.dyndns.org>
Reviewed by: rpluem


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@470076 13f79535-47bb-0310-9956-ffa450edef68
2006-11-01 20:20:42 +00:00
Mladen Turk
631a73fbdc When Servlet container sends AJP body message with size 0, this means that Servlet container has asked for an explicit flush.
Create flush bucket in that case.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@468941 13f79535-47bb-0310-9956-ffa450edef68
2006-10-29 17:05:40 +00:00
Mladen Turk
ae0b0e4d65 Add CPING/CPONG message size as defined as max inside Apache Tomcat using define.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@467274 13f79535-47bb-0310-9956-ffa450edef68
2006-10-24 08:18:50 +00:00
Jean-Frederic Clere
9fb8b2fce8 Put the next field at the end of the structure.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@467265 13f79535-47bb-0310-9956-ffa450edef68
2006-10-24 07:31:52 +00:00
Mladen Turk
812fe32592 128 is enough for CPING/CPONG messages.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@467259 13f79535-47bb-0310-9956-ffa450edef68
2006-10-24 07:01:44 +00:00
Mladen Turk
247365582c Make sure the AJP message is between 8 and 64K.
Use the provided message size when using get_brigade.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@467257 13f79535-47bb-0310-9956-ffa450edef68
2006-10-24 06:33:13 +00:00
Jeff Trawick
a61bc18671 fix typo that breaks compilation
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@467017 13f79535-47bb-0310-9956-ffa450edef68
2006-10-23 16:07:40 +00:00
Jean-Frederic Clere
aab07de155 At support for ProxyIOBufferSize in AJP.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@467014 13f79535-47bb-0310-9956-ffa450edef68
2006-10-23 15:31:59 +00:00
Mladen Turk
510c4ce73f Added mod_proxy_fcgi win32 build.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@463900 13f79535-47bb-0310-9956-ffa450edef68
2006-10-14 08:23:43 +00:00
Mladen Turk
9f913fff80 Make sure that original socket timeout gets restored
even if the cping/cpong fails.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@452549 13f79535-47bb-0310-9956-ffa450edef68
2006-10-03 15:54:07 +00:00
Mladen Turk
4932849eec Revert 451953 and 451951. Log the real r->method that is
unsupported by the AJP protocol.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@452536 13f79535-47bb-0310-9956-ffa450edef68
2006-10-03 15:18:57 +00:00
Jeff Trawick
92067e547e spellcheck
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@452405 13f79535-47bb-0310-9956-ffa450edef68
2006-10-03 10:52:12 +00:00
Mladen Turk
29bb9d02c7 Add missing include for experimental is_connected.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@452327 13f79535-47bb-0310-9956-ffa450edef68
2006-10-03 07:15:46 +00:00
Mladen Turk
fe00141420 Ups. Fix typo. We are logging int, not string.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@451953 13f79535-47bb-0310-9956-ffa450edef68
2006-10-02 10:26:13 +00:00
Mladen Turk
0102152486 If the r->method_number is unknown the r->method
is unknown or corrupted as well. Log the method number
that was not recognized.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@451951 13f79535-47bb-0310-9956-ffa450edef68
2006-10-02 10:24:45 +00:00
Mladen Turk
93146d3b40 Cleanup alternate is_connected method.
It works for sure on win32,linux and solaris.
I do not have access to other platforms so can not
verify it works on them.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@451896 13f79535-47bb-0310-9956-ffa450edef68
2006-10-02 07:06:24 +00:00
Mladen Turk
1689a2c3f4 Move new struct member to the end of the struct,
so we can keep the compatibility.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@451582 13f79535-47bb-0310-9956-ffa450edef68
2006-09-30 11:26:26 +00:00
Mladen Turk
907c904bc6 Add alternative is_socket_connected implementation.
It works on win32 and linux for sure, so that's why
I put it inside the #ifdef.
Of course something like that needs APR abstraction.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@451580 13f79535-47bb-0310-9956-ffa450edef68
2006-09-30 11:04:46 +00:00
Mladen Turk
6a68c112dc Enable retry=0 for the worker.
This allows to have an option to always retry
the workers in error state instead using a
specified time.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@451575 13f79535-47bb-0310-9956-ffa450edef68
2006-09-30 10:41:51 +00:00
Mladen Turk
f80b020c74 Add force recovery for balancer.
In case all balancer members were in error state 503
was returned until the recovery timeout expired.
The patch forces recovery in case all balancer members
are in error state regardless of recovery timeout
directive.
This fixes the time gap when 503 was returned and
backend was already up and running.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@451572 13f79535-47bb-0310-9956-ffa450edef68
2006-09-30 10:18:48 +00:00
Ruediger Pluem
483ddc121a * Set the new environment variable BALANCER_ROUTE_CHANGED if a worker with a
route different from the one supplied by the client had been chosen or if
  the client supplied no routing information for a balancer with sticky
  sessions.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@446929 13f79535-47bb-0310-9956-ffa450edef68
2006-09-16 19:49:41 +00:00
Ruediger Pluem
7361c75b95 * PROXY_WORKER_IS_INITIALIZED checks if PROXY_WORKER_INITIALIZED is set in
worker->s->status, but we need to check here if it is set in worker->status.

  As PROXY_WORKER_INITIALIZED is set in worker->s->status in
  ap_proxy_initialize_worker_share, which is called just before
  ap_proxy_initialize_worker we never initialize the worker. This is very bad
  as we create no reslist for the pool in this case.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@443503 13f79535-47bb-0310-9956-ffa450edef68
2006-09-14 22:34:34 +00:00
Ruediger Pluem
ef038e0617 * Print the correct error message for erroneous configured ProxyPass directives.
PR: 40439
Submitted by: serai lans-tv.com
Reviewed by: rpluem


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@441947 13f79535-47bb-0310-9956-ffa450edef68
2006-09-10 12:37:21 +00:00
Jeff Trawick
743a621e8d Replace ap_get_server_version with ap_get_server_banner() and
ap_get_server_description().

High-level summary:

The full server version information is now included in the error log at
startup as well as server status reports, irrespective of the setting
of the ServerTokens directive.

Third-party modules must now use ap_get_server_banner() or 
ap_get_server_description() in place of ap_get_server_version().



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@440337 13f79535-47bb-0310-9956-ffa450edef68
2006-09-05 13:08:15 +00:00
Ruediger Pluem
3397848717 * Extract stickysession information correctly in the case that it is given
as parameter like in the following example:

  www.someplace.com/somewhere/?jsessionid=gggfgdufdfoef.server&parameter=value

  So far we were only able to handle stickysession information encoded in the
  following form:

  www.someplace.com/somewhere/;jsessionid=gggfgdufdfoef.server?parameter=value

PR: 40400


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@440160 13f79535-47bb-0310-9956-ffa450edef68
2006-09-04 19:51:52 +00:00
Jim Jagielski
3f66c0200f Minor nit: why make the logic more complex than it needs to
be ? :)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@437768 13f79535-47bb-0310-9956-ffa450edef68
2006-08-28 17:57:24 +00:00