RE: How to select the directory index file for load balancing?
"Bryan Ross" <[email protected]> Wed, 29 Oct 2003 15:04:11 -0000
| Newsgroups | gmane.comp.apache.mod-backhand.general |
|---|---|
| Organization | LiquidState |
| Message-ID | <[email protected]> |
Hi there; Quick question: While debugging a slightly different problem, we came across something that looked like mod_backhand interfering with sub requests. We just assumed that it was trying to handle them. When mod_dir does a 'fake' request to get the uri.... Eg: request_rec *rr = ap_sub_req_lookup_uri(name_ptr, r); (see my previous post) Why does mod_backhand prepend "backhand:" to the uri? .... Eg: char *new_uri = ap_escape_uri(r->pool, rr->uri); Here, new_uri will equal "backhand: /mydir/file.cgi" - which in our tests, has caused 404 errors to be returned. This is what we were hoping to change. Ie, get mod_backhand not to add the "backhand:" when apache is doing an ap_sub_req_lookup_uri. In the meantime, we've hacked mod_dir to simply drop the "backhand:", and it seems to work okay. We've not looked into changing mod_backhand yet to see how difficult it would be, but I'll keep you posted. We're no apache experts, so any advice would be gratefully received! Cheers Bryan > -----Original Message----- > From: [email protected] > [mailto:[email protected]] On Behalf Of > Theo Schlossnagle > Sent: Wednesday, October 29, 2003 2:23 PM > To: [email protected] > Cc: Theo Schlossnagle > Subject: Re: [m_b_users] How to select the directory index > file for load balancing? > > I'm just fishin' here... But I think it has to do with the > way mod_backhand handles apache internal subrequests. > > mod_backhand will only try to load balance things that are > initial requests. Here, the initial request is / and then it > is expanded with DirectoryIndex to /index.php which is issues > into apache as an internal sub request, which mod_backhand > will not attempt to load balance. > > This behaviour was selected to allow mod_backhand to > peacefully coexist with modules like mod_gzip. > > One way is to work around this is to use mod_rewrite. I > think you can rewrite all / to index.php with a 302 and that > will work like a charm. > If that isn't a desirable approach, then someone more clever > than me can try to change mod_backhand to handle subrequests too... > > On Oct 29, 2003, at 9:08 AM, Thomas Buehren wrote: > > > Hello again, > > > > having read the mail of Bryan Ross who also has problems with the > > DirectoryIndex, I wonder if my problem of how to load balance the > > directory index file might result from a mod_backhand error: > > > > This works with the directory index file index.php > (http://DOMAINNAME/ > > returns a 403 forbidden): > > > > <Directory "/usr/local/httpd/htdocs/genieuk"> > > <Files ~ "(\.php3|\.php)$"> > > Order allow,deny > > Deny from all > > </Files> > > </Directory> > > > > So, the Files statement seems to include my index.php > directory index > > file. > > BUT this does not work with index.php > (http://DOMAINNAME/index.php is > > load balanced, but http://DOMAINNAME/ is always executed on the > > original > > server): > > > > <Directory "/usr/local/httpd/htdocs/genieuk"> > > <Files ~ "(\.php3|\.php)$"> > > Backhand byAge > > Backhand byRandom > > Backhand byLoad -3.0 > > </Files> > > </Directory> > > > > Does anyone know how to enable load balancing for > http://DOMAINNAME/? > > > > Thomas > > > > > >> -----Original Message----- > >> From: [email protected] > >> [mailto:[email protected]]On Behalf > Of Thomas > >> Buehren > >> Sent: Sunday, October 26, 2003 1:25 PM > >> > >> Hello, > >> > >> probably a simple question for you, but I could not find a > solution: > >> > >> I use backhand to load-balance php requests. All the rest > should be > >> processed by the original server. The "Files" selection in the > >> configuration below does that for me. > >> > >> The problem: The directory index file "index.php" is not load > >> balanced if the request is "http://DOMAINNAME/", it only works as > >> "http://DOMAINNAME/index.php". How can I modify the > selection (or add > >> another) to capture the directory index php file when it > is not given > >> in the URL? (Apache/1.3.20 mod_backhand/1.2.0) > >> > >> I would be grateful for any help. > >> > >> Thomas > >> > >> > >> DirectoryIndex index.jsp index.php3 index.html index.htm > >> > >> <VirtualHost IPADDRESS:80> > >> ServerAdmin [email protected] > >> DocumentRoot /usr/local/httpd/htdocs/genieuk > >> ServerName DOMAINNAME > >> > >> ErrorLog "|rotatelogs > >> /usr/local/httpd/htdocs/genieuk/stats/error_log > >> 86400" > >> CustomLog "|rotatelogs > >> /usr/local/httpd/htdocs/genieuk/stats/access_log > >> 86400" combined > >> > >> AddType application/x-httpd-php .php3 > >> <Directory "/usr/local/httpd/htdocs/genieuk"> > >> <Files ~ "(\.php3|\.php)$"> > >> Backhand byAge > >> Backhand byRandom > >> Backhand byLoad -3.0 > >> </Files> > >> </Directory> > >> </VirtualHost> > > > > > > _______________________________________________ > > backhand-users mailing list > > [email protected] > > http://lists.backhand.org/mailman/listinfo/backhand-users > > > // Theo Schlossnagle > // Principal Engineer -- http://www.omniti.com/~jesus/ // > Postal Engine -- http://www.postalengine.com/ // Ecelerity: > fastest MTA on earth > > > _______________________________________________ > backhand-users mailing list > [email protected] > http://lists.backhand.org/mailman/listinfo/backhand-users >