you should be able to debug this pretty well by doing some or all of the
following:

set $Apache::DBI::DEBUG=2 in startup.pl
set PerlWarn On in httpd.conf
use strict;
run in httpd -X

see
http://perl.apache.org/guide/porting.html#Sometimes_it_Works_Sometimes_it


HTH

--Geoff


> -----Original Message-----
> From: ? [mailto:[EMAIL PROTECTED]]
> Sent: Friday, May 26, 2000 2:12 PM
> To: [EMAIL PROTECTED]
> Subject: mod_perl, multiple virtual hosts, and DBI weirdness
> 
> 
> Hello all...
> 
> Having a wacky problem that I can't seem to figure out... 
> (Apache-1.3.12, mod_perl-1.24, ApacheDBI-0.87)
> 
> I have two NameVirtualHosts, we'll call them host1.foo.com and 
> host2.foo.com, both running on the same IP on the same server.  Both 
> are similar sites, so I've moved a lot of code common to both sites 
> into library files - there's a library for database access, 
> utilities, ecommerce integration, etc.... Each library file defines 
> its own package (although it is NOT object oriented).  I also have 
> site-wide configuration files for each site which also define their 
> own package.  Now, here's my problem...
> 
> host1.foo.com was developed first... it runs fine... I finished 
> host2, and started testing it, and discovered that when both host1 
> and host2 are running, and users are hitting both sites, sometimes 
> the configuration gets messed up.  For example, I have a search page 
> on each site with drop-down boxes for options.  Host1 will sometimes 
> display options for Host2, and vice-versa -- these options are being 
> dynamically generated from the databases, so it looks like the 
> scripts are sporadically using the wrong database handles.  
> 
> The file structure looks like this:
> 
> host1/
>   perl-bin/
>     bunch of .cgi scripts that run under mod_perl
>     config/
>       all of my .pl library files and a .rc config file
>   doc/
> 
> host2/
>   perl2-bin/
>   bunch of .cgi scripts that have the same names (but are different)
>   than those in host1
>   config2/
>     all of the .pl files (exactly the same files as in host1 - I had
>     actually symlinked them at one point) plus a different .rc file
>   doc/
> 
> The package names in the library files are the same across both 
> sites... there's package dbAccess, cgiUtil, etc.... site.rc declares 
> package "site" for both sites, and contains database name, login 
> info, and such...
> 
> Anyway... I had thought that because the URIs are different, it 
> wouldn't matter that the package names are the same from one site to 
> another-- on host1, search.cgi has this:
> 
> require "config1/site.rc"; 
> require "config1/dbAccess.pl";
> .....
> 
> and on host2...
> 
> require "config2/site.rc"; 
> require "config2/dbAccess.pl";
> ....
> 
> But this doesn't seem to keep the server from sporadically crossing
> database  handles... I hope I've explained this well enough 
> that someone
> can  figure out what I've got and help me fix it...
> 
> Thanks...
> e.
> [EMAIL PROTECTED]
> 
> 

Reply via email to