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]
>
>