RE: Strange Apache 2.0 rewrite/proxy issue
There are some stability issues in mod_proxy for apache 2.0.28. It can segfault or display run-away cpu issues in the following cases: 1) backend server closes connection without sending any data 2) backend sends bogus status line 3) backend sends HTTP/0.9 response You might want to look and see if your backend server is mis-behaving in any way. These issues have been fixed and the current CVS version of mod_proxy is more stable. Not sure when the next public beta will be though. -adam -Original Message- From: John Armstrong [mailto:[EMAIL PROTECTED]] Sent: Thursday, January 03, 2002 11:26 AM To: [EMAIL PROTECTED] Subject: Strange Apache 2.0 rewrite/proxy issue This 'seems' to be a modperl issue. My configuration. I needed a 1.1 compliant reverse proxy in order to support Chunked encoding for an xml gateway. Since only Apache 2.0 has a 1.1 compliant reverse proxy I replaced my Apache 1.3.14 standard apache wth an Apache 2.0.28 with the proxy support compiled in. My modperl server on the backend is still running as 1.3.14. The 2.0.28 proxy uses mod_rewrite. When it rewrites url's internally to go to a static apache server all works great! However, when it rewrites to my modperl 1.3.14 server apache 2.0.28 children start segfaulting left and right with a code 11. I can not find any reference to this on the 2.0 mailing lists/groups. Does anyone know why Apache 2.0 running as a rewrite reverse proxy would die only when it talks to my modperl servers? This is destroying my development time and about to kill me on some significant deadlines :( John-
Re: Strange Apache 2.0 rewrite/proxy issue
> "NT" == Nick Tonkin <[EMAIL PROTECTED]> writes: JA> 1) Static html server. >> >> I always make my front end reverse proxy handle static content >> directly. NT> Always is a strong word! At ValueClick we used thttpd servers to deliver NT> gif images ... one thttpd could efficiently handle the same number of NT> requests as several (non-mod_perl) front end reverse proxies ... Did you make a front-end proxy talk to your thttpd servers? I think not... I suspect you set the URLs to have the client talk to the thttpd servers directly.
Re: Strange Apache 2.0 rewrite/proxy issue
On 4 Jan 2002, Vivek Khera wrote: > > "JA" == John Armstrong <[EMAIL PROTECTED]> writes: > > JA> Because the front end reverse proxy needs to connect to one of 3 > JA> different servers. > > > JA> 1) Static html server. > > I always make my front end reverse proxy handle static content > directly. Always is a strong word! At ValueClick we used thttpd servers to deliver gif images ... one thttpd could efficiently handle the same number of requests as several (non-mod_perl) front end reverse proxies ... - nick Nick Tonkin {|8^)>
Re: Strange Apache 2.0 rewrite/proxy issue
> "JA" == John Armstrong <[EMAIL PROTECTED]> writes: JA> Because the front end reverse proxy needs to connect to one of 3 JA> different servers. JA> 1) Static html server. I always make my front end reverse proxy handle static content directly. -- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Vivek Khera, Ph.D.Khera Communications, Inc. Internet: [EMAIL PROTECTED] Rockville, MD +1-240-453-8497 AIM: vivekkhera Y!: vivek_khera http://www.khera.org/~vivek/
Re: Strange Apache 2.0 rewrite/proxy issue
Correct. The overall goal here is to allow Apache 2.0 to handle the URL rewriting and redirection for all different types of requests. Currently we use Apache 1.3.14 for some items and the F5 load balancing box for others. The F5 has a hard limit of 100 rules in its latest version and we would rather not run into that so we decided to give Apache 2.0 a shot. Until 2.0 is ready for prime time we'll just stick with the F5 and be careful about how many rules we add. Thanks J On Thursday, January 3, 2002, at 02:08 PM, Igor Sysoev wrote: > On Thu, 3 Jan 2002, John Armstrong wrote: > >> When the reverse proxy connects to the windows boxes it needs to >> maintain a persistent connection since the client is an appliance, >> not a >> browser. > > So if you will have persistent connection between client and frontend > and have non-persistent connection between frontend and xml backend > will it slow down your things significantly ? > > Igor Sysoev > >> This works fine with 2.0 when 2.0 is not segfaulting :) >> >> Think I'll just get out of apache land and let the F5 handle it for >> now, >> we won't hit the 100 rule limit for a few more months and hopefully >> apache 2.0 is more stable by then and can take over the URL rewriting. >> >> John- >> >> On Thursday, January 3, 2002, at 01:58 PM, Igor Sysoev wrote: >> >>> On Thu, 3 Jan 2002, John Armstrong wrote: >>> Correct, with 1.0 we lose persistency and things slow down significantly. I guess I should have just said 'Persistency' in the first place, sorry about that :) >>> >>> OK. Where do you need persistent connection - between frontend and >>> xml backend or between client and frontend ? >>> On Thursday, January 3, 2002, at 01:44 PM, Igor Sysoev wrote: > On Thu, 3 Jan 2002, John Armstrong wrote: > >> Because the front end reverse proxy needs to connect to one of 3 >> different servers. >> >> 1) Static html server. >> 2) Mod Perl dynamic content server >> 3) Windows based xml servers that need to use 1.1 to communicate. > > So if one will make request to xml server with HTTP/1.0 then > he will receive response with error code ? > Can not it work in HTTP/1.0 at all ? > >> So for 3 we need chunked or the Content-Length, either way, we need >> 1.1. >> compatibility. >> >> John- >> >> On Thursday, January 3, 2002, at 12:33 PM, Igor Sysoev wrote: >> >>> On Thu, 3 Jan 2002, John Armstrong wrote: >>> This 'seems' to be a modperl issue. My configuration. I needed a 1.1 compliant reverse proxy in order to support Chunked encoding for an xml gateway. >>> >>> Why do you need chunked encoding from backend ? > > Igor Sysoev >
Re: Strange Apache 2.0 rewrite/proxy issue
On Thu, 3 Jan 2002, John Armstrong wrote: > When the reverse proxy connects to the windows boxes it needs to > maintain a persistent connection since the client is an appliance, not a > browser. So if you will have persistent connection between client and frontend and have non-persistent connection between frontend and xml backend will it slow down your things significantly ? Igor Sysoev > This works fine with 2.0 when 2.0 is not segfaulting :) > > Think I'll just get out of apache land and let the F5 handle it for now, > we won't hit the 100 rule limit for a few more months and hopefully > apache 2.0 is more stable by then and can take over the URL rewriting. > > John- > > On Thursday, January 3, 2002, at 01:58 PM, Igor Sysoev wrote: > > > On Thu, 3 Jan 2002, John Armstrong wrote: > > > >> Correct, with 1.0 we lose persistency and things slow down > >> significantly. > >> > >> I guess I should have just said 'Persistency' in the first place, sorry > >> about that :) > > > > OK. Where do you need persistent connection - between frontend and > > xml backend or between client and frontend ? > > > >> On Thursday, January 3, 2002, at 01:44 PM, Igor Sysoev wrote: > >> > >>> On Thu, 3 Jan 2002, John Armstrong wrote: > >>> > Because the front end reverse proxy needs to connect to one of 3 > different servers. > > 1) Static html server. > 2) Mod Perl dynamic content server > 3) Windows based xml servers that need to use 1.1 to communicate. > >>> > >>> So if one will make request to xml server with HTTP/1.0 then > >>> he will receive response with error code ? > >>> Can not it work in HTTP/1.0 at all ? > >>> > So for 3 we need chunked or the Content-Length, either way, we need > 1.1. > compatibility. > > John- > > On Thursday, January 3, 2002, at 12:33 PM, Igor Sysoev wrote: > > > On Thu, 3 Jan 2002, John Armstrong wrote: > > > >> This 'seems' to be a modperl issue. > >> > >> My configuration. I needed a 1.1 compliant reverse proxy in order > >> to > >> support Chunked encoding for an xml gateway. > > > > Why do you need chunked encoding from backend ? > >>> > >>> Igor Sysoev
Re: Strange Apache 2.0 rewrite/proxy issue
When the reverse proxy connects to the windows boxes it needs to maintain a persistent connection since the client is an appliance, not a browser. This works fine with 2.0 when 2.0 is not segfaulting :) Think I'll just get out of apache land and let the F5 handle it for now, we won't hit the 100 rule limit for a few more months and hopefully apache 2.0 is more stable by then and can take over the URL rewriting. John- On Thursday, January 3, 2002, at 01:58 PM, Igor Sysoev wrote: > On Thu, 3 Jan 2002, John Armstrong wrote: > >> Correct, with 1.0 we lose persistency and things slow down >> significantly. >> >> I guess I should have just said 'Persistency' in the first place, sorry >> about that :) > > OK. Where do you need persistent connection - between frontend and > xml backend or between client and frontend ? > >> On Thursday, January 3, 2002, at 01:44 PM, Igor Sysoev wrote: >> >>> On Thu, 3 Jan 2002, John Armstrong wrote: >>> Because the front end reverse proxy needs to connect to one of 3 different servers. 1) Static html server. 2) Mod Perl dynamic content server 3) Windows based xml servers that need to use 1.1 to communicate. >>> >>> So if one will make request to xml server with HTTP/1.0 then >>> he will receive response with error code ? >>> Can not it work in HTTP/1.0 at all ? >>> So for 3 we need chunked or the Content-Length, either way, we need 1.1. compatibility. John- On Thursday, January 3, 2002, at 12:33 PM, Igor Sysoev wrote: > On Thu, 3 Jan 2002, John Armstrong wrote: > >> This 'seems' to be a modperl issue. >> >> My configuration. I needed a 1.1 compliant reverse proxy in order >> to >> support Chunked encoding for an xml gateway. > > Why do you need chunked encoding from backend ? >>> >>> Igor Sysoev >
Re: Strange Apache 2.0 rewrite/proxy issue
On Thu, 3 Jan 2002, John Armstrong wrote: > Correct, with 1.0 we lose persistency and things slow down significantly. > > I guess I should have just said 'Persistency' in the first place, sorry > about that :) OK. Where do you need persistent connection - between frontend and xml backend or between client and frontend ? > On Thursday, January 3, 2002, at 01:44 PM, Igor Sysoev wrote: > > > On Thu, 3 Jan 2002, John Armstrong wrote: > > > >> Because the front end reverse proxy needs to connect to one of 3 > >> different servers. > >> > >> 1) Static html server. > >> 2) Mod Perl dynamic content server > >> 3) Windows based xml servers that need to use 1.1 to communicate. > > > > So if one will make request to xml server with HTTP/1.0 then > > he will receive response with error code ? > > Can not it work in HTTP/1.0 at all ? > > > >> So for 3 we need chunked or the Content-Length, either way, we need > >> 1.1. > >> compatibility. > >> > >> John- > >> > >> On Thursday, January 3, 2002, at 12:33 PM, Igor Sysoev wrote: > >> > >>> On Thu, 3 Jan 2002, John Armstrong wrote: > >>> > This 'seems' to be a modperl issue. > > My configuration. I needed a 1.1 compliant reverse proxy in order to > support Chunked encoding for an xml gateway. > >>> > >>> Why do you need chunked encoding from backend ? > > > > Igor Sysoev
Re: Strange Apache 2.0 rewrite/proxy issue
Correct, with 1.0 we lose persistency and things slow down significantly. I guess I should have just said 'Persistency' in the first place, sorry about that :) John- On Thursday, January 3, 2002, at 01:44 PM, Igor Sysoev wrote: > On Thu, 3 Jan 2002, John Armstrong wrote: > >> Because the front end reverse proxy needs to connect to one of 3 >> different servers. >> >> 1) Static html server. >> 2) Mod Perl dynamic content server >> 3) Windows based xml servers that need to use 1.1 to communicate. > > So if one will make request to xml server with HTTP/1.0 then > he will receive response with error code ? > Can not it work in HTTP/1.0 at all ? > >> So for 3 we need chunked or the Content-Length, either way, we need >> 1.1. >> compatibility. >> >> John- >> >> On Thursday, January 3, 2002, at 12:33 PM, Igor Sysoev wrote: >> >>> On Thu, 3 Jan 2002, John Armstrong wrote: >>> This 'seems' to be a modperl issue. My configuration. I needed a 1.1 compliant reverse proxy in order to support Chunked encoding for an xml gateway. >>> >>> Why do you need chunked encoding from backend ? > > Igor Sysoev >
Re: Strange Apache 2.0 rewrite/proxy issue
On Thu, 3 Jan 2002, John Armstrong wrote: > Because the front end reverse proxy needs to connect to one of 3 > different servers. > > 1) Static html server. > 2) Mod Perl dynamic content server > 3) Windows based xml servers that need to use 1.1 to communicate. So if one will make request to xml server with HTTP/1.0 then he will receive response with error code ? Can not it work in HTTP/1.0 at all ? > So for 3 we need chunked or the Content-Length, either way, we need 1.1. > compatibility. > > John- > > On Thursday, January 3, 2002, at 12:33 PM, Igor Sysoev wrote: > > > On Thu, 3 Jan 2002, John Armstrong wrote: > > > >> This 'seems' to be a modperl issue. > >> > >> My configuration. I needed a 1.1 compliant reverse proxy in order to > >> support Chunked encoding for an xml gateway. > > > > Why do you need chunked encoding from backend ? Igor Sysoev
Re: Strange Apache 2.0 rewrite/proxy issue
Because the front end reverse proxy needs to connect to one of 3 different servers. 1) Static html server. 2) Mod Perl dynamic content server 3) Windows based xml servers that need to use 1.1 to communicate. So for 3 we need chunked or the Content-Length, either way, we need 1.1. compatibility. John- On Thursday, January 3, 2002, at 12:33 PM, Igor Sysoev wrote: > On Thu, 3 Jan 2002, John Armstrong wrote: > >> This 'seems' to be a modperl issue. >> >> My configuration. I needed a 1.1 compliant reverse proxy in order to >> support Chunked encoding for an xml gateway. > > Why do you need chunked encoding from backend ?
Re: Strange Apache 2.0 rewrite/proxy issue
On Thu, 3 Jan 2002, John Armstrong wrote: > This 'seems' to be a modperl issue. > > My configuration. I needed a 1.1 compliant reverse proxy in order to > support Chunked encoding for an xml gateway. Why do you need chunked encoding from backend ? > Since only Apache 2.0 has a 1.1 compliant reverse proxy I replaced my > Apache 1.3.14 standard apache wth an Apache 2.0.28 with the proxy > support compiled in. > > My modperl server on the backend is still running as 1.3.14. > > The 2.0.28 proxy uses mod_rewrite. When it rewrites url's internally to > go to a static apache server all works great! > > However, when it rewrites to my modperl 1.3.14 server apache 2.0.28 > children start segfaulting left and right with a code 11. I can not find > any reference to this on the 2.0 mailing lists/groups. > > Does anyone know why Apache 2.0 running as a rewrite reverse proxy would > die only when it talks to my modperl servers? This is destroying my > development time and about to kill me on some significant deadlines :( I'm not sure that mod_proxy in Apache 2 is stable. Igor Sysoev
Re: Strange Apache 2.0 rewrite/proxy issue
> The 2.0.28 proxy uses mod_rewrite. When it rewrites url's internally to > go to a static apache server all works great! Compare the headers sent by your static pages vs. the ones sent by your mod_perl pages. There might be something not quite 1.1 compliant about it that ticks of apache 2 (although segfaulting is clearly not reasonable behavior even so). - Perrin
Re: Strange Apache 2.0 rewrite/proxy issue
I was looking at oops but it doesn't seem to suit my needs which are : Reverse 1.1 compliant proxy with mod_rewrite style capabilities. Squid is my next chance but I was hoping to get apache working since I don't want to run _3_ servers ( squid, static apache and modperl apache ). John- On Thursday, January 3, 2002, at 11:38 AM, Ilya Martynov wrote: >> On Thu, 3 Jan 2002 11:26:18 -0800, John Armstrong >> <[EMAIL PROTECTED]> said: > > John> This 'seems' to be a modperl issue. > John> My configuration. I needed a 1.1 compliant reverse proxy in order > to > John> support Chunked encoding for an xml gateway. > > John> Since only Apache 2.0 has a 1.1 compliant reverse proxy I > replaced my > John> Apache 1.3.14 standard apache wth an Apache 2.0.28 with the proxy > John> support compiled in. > > You can try oops[1] also. It is a HTTP 1.1 proxy. > > [1] http://zipper.paco.net/~igor/oops.eng/ > > -- > > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- > | Ilya Martynov (http://martynov.org/) TIV.net > (http://tiv.net/) | > | GnuPG 1024D/323BDEE6 D7F7 561E 4C1D 8A15 8E80 E4AE BE1A 53EB 323B > DEE6 | > > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Re: Strange Apache 2.0 rewrite/proxy issue
> On Thu, 3 Jan 2002 11:26:18 -0800, John Armstrong <[EMAIL PROTECTED]> said: John> This 'seems' to be a modperl issue. John> My configuration. I needed a 1.1 compliant reverse proxy in order to John> support Chunked encoding for an xml gateway. John> Since only Apache 2.0 has a 1.1 compliant reverse proxy I replaced my John> Apache 1.3.14 standard apache wth an Apache 2.0.28 with the proxy John> support compiled in. You can try oops[1] also. It is a HTTP 1.1 proxy. [1] http://zipper.paco.net/~igor/oops.eng/ -- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- | Ilya Martynov (http://martynov.org/) TIV.net (http://tiv.net/) | | GnuPG 1024D/323BDEE6 D7F7 561E 4C1D 8A15 8E80 E4AE BE1A 53EB 323B DEE6 | -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-