Problem is not in connection with database. When I try to connect then $2 regexp variable becomes undefined and script can not redirect anywhere. ($r->uri($2)) But when script is not connected with database all works perfectly and this variable has a real defined value. I can not understand this ...
Original source: package Apache::StripSession; use strict; use Apache; use Apache::Constants qw(:common); sub handler { my $r = shift; my $dbh = DBI->connect('dbi:mysql:db', 'user', 'pswd'); $dbh->disconnect; return DECLINED unless $r->uri =~ /^\/session\/([a-zA-Z0-9]{32})(.*)/; $r->subprocess_env(SESSION => $1); $r->uri($2); return DECLINED; } 1; -----Original Message----- From: "Raf" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Date: Fri, 27 Jun 2003 15:09:13 -0000 (GMT) Subject: Re: Re[2]: Problem with PerlTransHandler > > Sergey V. Stashinskas said: > > If these lines are commented out then script is working ok. > > > > -----Original Message----- > > From: <[EMAIL PROTECTED]> > > To: "Sergey V. Stashinskas " > > <[EMAIL PROTECTED]>,<[EMAIL PROTECTED]> Date: Fri, 27 Jun > > 2003 16:39:12 +0300 > > Subject: RE: Problem with PerlTransHandler > > > >> > >> Have you tried to comment out the 2 DBI lines like this: > >> > >> #my $dbh = DBI->connect('dbi:mysql:db', 'user', 'pswd'); > >> #$dbh->disconnect; > > Can't find your original post, however try doing something like: > > $dbh->disconnect if ref($dbh); > > or: > > if (ref $dbh) { > $dbh->disconnect; > else { > ## CHECK LOGS for this > print STDERR "\n Failed to connect \n"; > }; > > Cheers, > > Raf > > > >