Re: New mod_perl website [Was Re: Modifying @INC via startup.pl]
Drew Taylor wrote: > This is a little OT, but I really love the new look of the website you > mention below. Major kudos to all those who helped put together the new > look-n-feel & content. Thanks Drew, but please hold off on any comments, since we are still tuning the design to work better in various browsers. Once we are satisfied with it, we will make an announcement and then ask you to check if you have any problems with your favorite browsers. Meanwhile if you are willing to help or want to comment on things, please join the [EMAIL PROTECTED] list. We do need your help. BTW, the final site will be at http://perl.apache.org/. The http://perl.apache.org/release/ URL is only temporary. __ Stas BekmanJAm_pH --> Just Another mod_perl Hacker http://stason.org/ mod_perl Guide ---> http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
New mod_perl website [Was Re: Modifying @INC via startup.pl]
This is a little OT, but I really love the new look of the website you mention below. Major kudos to all those who helped put together the new look-n-feel & content. Drew >At 11:53 PM 5/19/2002 +0200, you wrote: >>Thank you very much Gregory, I have patches the online docs. >> >>By the way, the release-ready (almost) site is now at >>http://perl.apache.org/release/ == Drew Taylor | Freelance web development using http://www.drewtaylor.com/ | perl/mod_perl/MySQL/postgresql/DBI mailto:[EMAIL PROTECTED] | Email jobs at drewtaylor.com -- Speakeasy.net: A DSL provider with a clue. Sign up today. http://www.speakeasy.net/refer/29655 ==
Apache::DBI debugging (was: Re: Modifying @INC via startup.pl)
At 23:36 19.05.2002, Gregory Matthews wrote: >># Initialize the database connections for each child >>Apache::DBI->connect_on_init >>("DBI:mysql:database=test;host=localhost", "user","password", >>{ PrintError => 1, # warn() on errors >>RaiseError => 0, # don't die on error >>AutoCommit => 1, # commit executes immediately } >> >>I am also using the $Apache::DBI::DEBUG = 2; flag to ensure it is working >>properly. >> >>I am NOT seeing the entries in the error_log both when Apache::DBI >>initializes a connection and when it returns one from its cache. >> >>Shouldn't I be able to see a reference to the connection in my error_log >>file? >> >>I checked both my virtual host error_log file and the server error_log >>file. Nothing in either. When/Where are you setting this flag? I don't have much experience with Apache::DBI, so I won't be able to help you much. You could also try DBI->trace(1); #or any other level mentioned in the DBI docs. -- Per Einar Ellefsen [EMAIL PROTECTED]
Re: Modifying @INC via startup.pl
Thanks for the update! Did you get a chance to review the other question I had below? Gregory At 11:53 PM 5/19/2002 +0200, you wrote: >Thank you very much Gregory, I have patches the online docs. > >By the way, the release-ready (almost) site is now at >http://perl.apache.org/release/ > > >At 23:36 19.05.2002, Gregory Matthews wrote: >>Tom: >> >>Here is one of them. I think that I saw it elsewhere also. When I come >>across the other pages, I will advise. >> >>http://perl.apache.org/preview/modperl-site-ok/docs/1.0/guide/config.html#MinSpareServers_MaxSpareServers_StartServers_MaxClients_MaxRequestsPerChild >> >>Thanks again Tom! >> >>Also, here is another question: I am putting the following in my startup >>file to initialize a db connection: >> >># Initialize the database connections for each child >>Apache::DBI->connect_on_init >>("DBI:mysql:database=test;host=localhost", "user","password", >>{ PrintError => 1, # warn() on errors >>RaiseError => 0, # don't die on error >>AutoCommit => 1, # commit executes immediately } >> >>I am also using the $Apache::DBI::DEBUG = 2; flag to ensure it is working >>properly. >> >>I am NOT seeing the entries in the error_log both when Apache::DBI >>initializes a connection and when it returns one from its cache. >> >>Shouldn't I be able to see a reference to the connection in my error_log >>file? >> >>I checked both my virtual host error_log file and the server error_log >>file. Nothing in either. >> >>Gregory >> >> >> >> >>At 10:21 PM 5/19/2002 +0200, you wrote: >>>At 22:03 19.05.2002, Gregory Matthews wrote: Tom: Fixed it. I needed to add a 1; to the end of my startup.pl file. I was using a startup.pl file example from apache.org which did NOT have this. Then in doing some research, found out that it needed it. Now the @INC is being updated at startup. >>> >>>:) >>> >>>Would you mind telling us which exaple it was so that we can fix it? >>> At 11:40 AM 5/19/2002 -0700, you wrote: >Gregory, are you _sure_ you have the right error_log ? You didn't send >mod_perl errors somewhere different from normal? That is my most common >reason for not being able to find diagnostic messages... (looking in the >normal webserver logs, or the ssl logs, as compared to the mod_perl >daemon's error logs) > >On Sun, 19 May 2002, Per Einar Ellefsen wrote: > > > At 18:57 19.05.2002, Gregory Matthews wrote: > > >I added the below STDER statement and did NOT see the printout > either on > > >screen or in my error_log file. > > > > > >It sounds like then my startup.pl file is not even being > loaded? Funny > > >though I can deliberately put a bogus module name or misspell use > > >stric; and I will be unable to restart the server because of > it. Can > > >this file be "read" and checked for correctness but not "loaded"? > > > > Wow, now this is weird. Could you try something as simple as > > > > file:startup.pl > > -- > > use lib qw(/path/to/foo); > > print STDERR "Loading startup.pl"; > > 1; > > > > And then load that with PerlRequire? > > > > Came to think of it: could you try without Apache::DB? Maybe that's the > > source of your problems. > > > > Finally, as a quick fix to your original problem: maybe you can use > PERL5LIB: > > > > PerlSetEnv PERL5LIB /path > > > > in your httpd.conf. > > > > This is all I can come up with, sorry. > > > > >At 09:57 AM 5/19/2002 +0200, you wrote: > > >>At 02:50 19.05.2002, Gregory Matthews wrote: > > >>>Tried that...doesn't work either. > > >>> > > >>>@INC still cannot find my config.pl file. If I add the use lib > > >>>statement to my script, all is o.k.. If I try to add it to my > > >>>startup.pl and call it at startup time, I get the error from @INC. > > >> > > >>Are you sure you are loading your startup.pl file before your module? > > >>Are you sure it's getting loaded at all? > > >>Try adding a debug statement in your startup.pl: > > >> > > >>print STDERR 'Loading startup.pl @INC = ', join ":", @INC; > > >> > > >>after your "use lib" part. > > >> > > >>>At 06:16 PM 5/18/2002 -0400, you wrote: > > I did this: > > > > use lib qw(); > > > > That adds the path to @INC. Someone correct me if that's the > wrong way > > to do > > things > > > > - Original Message - > > From: "Gregory Matthews" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Saturday, May 18, 2002 6:12 PM > > Subject: Modifying @INC via startup.pl > > > > > > > I am trying to: > > > > > > use lib qw(/dir/foo); > > > > > > in my startup.pl file but @INC is NOT showing the path. I >>>
Re: Modifying @INC via startup.pl
Tom: Here is one of them. I think that I saw it elsewhere also. When I come across the other pages, I will advise. http://perl.apache.org/preview/modperl-site-ok/docs/1.0/guide/config.html#MinSpareServers_MaxSpareServers_StartServers_MaxClients_MaxRequestsPerChild Thanks again Tom! Also, here is another question: I am putting the following in my startup file to initialize a db connection: # Initialize the database connections for each child Apache::DBI->connect_on_init ("DBI:mysql:database=test;host=localhost", "user","password", { PrintError => 1, # warn() on errors RaiseError => 0, # don't die on error AutoCommit => 1, # commit executes immediately } I am also using the $Apache::DBI::DEBUG = 2; flag to ensure it is working properly. I am NOT seeing the entries in the error_log both when Apache::DBI initializes a connection and when it returns one from its cache. Shouldn't I be able to see a reference to the connection in my error_log file? I checked both my virtual host error_log file and the server error_log file. Nothing in either. Gregory At 10:21 PM 5/19/2002 +0200, you wrote: >At 22:03 19.05.2002, Gregory Matthews wrote: >>Tom: >> >>Fixed it. I needed to add a 1; to the end of my startup.pl file. I was >>using a startup.pl file example from apache.org which did NOT have this. >>Then in doing some research, found out that it needed it. Now the @INC >>is being updated at startup. > >:) > >Would you mind telling us which exaple it was so that we can fix it? > >>At 11:40 AM 5/19/2002 -0700, you wrote: >> >> >>>Gregory, are you _sure_ you have the right error_log ? You didn't send >>>mod_perl errors somewhere different from normal? That is my most common >>>reason for not being able to find diagnostic messages... (looking in the >>>normal webserver logs, or the ssl logs, as compared to the mod_perl >>>daemon's error logs) >>> >>>On Sun, 19 May 2002, Per Einar Ellefsen wrote: >>> >>> > At 18:57 19.05.2002, Gregory Matthews wrote: >>> > >I added the below STDER statement and did NOT see the printout either on >>> > >screen or in my error_log file. >>> > > >>> > >It sounds like then my startup.pl file is not even being loaded? Funny >>> > >though I can deliberately put a bogus module name or misspell use >>> > >stric; and I will be unable to restart the server because of >>> it. Can >>> > >this file be "read" and checked for correctness but not "loaded"? >>> > >>> > Wow, now this is weird. Could you try something as simple as >>> > >>> > file:startup.pl >>> > -- >>> > use lib qw(/path/to/foo); >>> > print STDERR "Loading startup.pl"; >>> > 1; >>> > >>> > And then load that with PerlRequire? >>> > >>> > Came to think of it: could you try without Apache::DB? Maybe that's the >>> > source of your problems. >>> > >>> > Finally, as a quick fix to your original problem: maybe you can use >>> PERL5LIB: >>> > >>> > PerlSetEnv PERL5LIB /path >>> > >>> > in your httpd.conf. >>> > >>> > This is all I can come up with, sorry. >>> > >>> > >At 09:57 AM 5/19/2002 +0200, you wrote: >>> > >>At 02:50 19.05.2002, Gregory Matthews wrote: >>> > >>>Tried that...doesn't work either. >>> > >>> >>> > >>>@INC still cannot find my config.pl file. If I add the use lib >>> > >>>statement to my script, all is o.k.. If I try to add it to my >>> > >>>startup.pl and call it at startup time, I get the error from @INC. >>> > >> >>> > >>Are you sure you are loading your startup.pl file before your module? >>> > >>Are you sure it's getting loaded at all? >>> > >>Try adding a debug statement in your startup.pl: >>> > >> >>> > >>print STDERR 'Loading startup.pl @INC = ', join ":", @INC; >>> > >> >>> > >>after your "use lib" part. >>> > >> >>> > >>>At 06:16 PM 5/18/2002 -0400, you wrote: >>> > I did this: >>> > >>> > use lib qw(); >>> > >>> > That adds the path to @INC. Someone correct me if that's the >>> wrong way >>> > to do >>> > things >>> > >>> > - Original Message - >>> > From: "Gregory Matthews" <[EMAIL PROTECTED]> >>> > To: <[EMAIL PROTECTED]> >>> > Sent: Saturday, May 18, 2002 6:12 PM >>> > Subject: Modifying @INC via startup.pl >>> > >>> > >>> > > I am trying to: >>> > > >>> > > use lib qw(/dir/foo); >>> > > >>> > > in my startup.pl file but @INC is NOT showing the path. I keep >>> getting >>> > > "Can't locate config.pl in @INC" errors after restarting the >>> server and >>> > > calling the script. >>> > > >>> > > My prog reads: >>> > > >>> > > require qq(config.pl); >>> > > >>> > > I am not sure what is going on. @INC shows: >>> > > >>> > > (@INC contains: /usr/libdata/perl/5.00503/mach >>> /usr/libdata/perl/5.00503 >>> > > /usr/local/lib/perl5/site_perl/5.005/i386-freebsd >>> > > /usr/local/lib/perl5/site_perl/5.005 . /usr/local/www/ >>> > > /usr/local/www/lib/perl) at (eval 265) line 22. >>> > > >>> >
Re: Modifying @INC via startup.pl
At 22:03 19.05.2002, Gregory Matthews wrote: >Tom: > >Fixed it. I needed to add a 1; to the end of my startup.pl file. I was >using a startup.pl file example from apache.org which did NOT have this. >Then in doing some research, found out that it needed it. Now the @INC is >being updated at startup. :) Would you mind telling us which exaple it was so that we can fix it? >At 11:40 AM 5/19/2002 -0700, you wrote: > > >>Gregory, are you _sure_ you have the right error_log ? You didn't send >>mod_perl errors somewhere different from normal? That is my most common >>reason for not being able to find diagnostic messages... (looking in the >>normal webserver logs, or the ssl logs, as compared to the mod_perl >>daemon's error logs) >> >>On Sun, 19 May 2002, Per Einar Ellefsen wrote: >> >> > At 18:57 19.05.2002, Gregory Matthews wrote: >> > >I added the below STDER statement and did NOT see the printout either on >> > >screen or in my error_log file. >> > > >> > >It sounds like then my startup.pl file is not even being loaded? Funny >> > >though I can deliberately put a bogus module name or misspell use >> > >stric; and I will be unable to restart the server because of it. Can >> > >this file be "read" and checked for correctness but not "loaded"? >> > >> > Wow, now this is weird. Could you try something as simple as >> > >> > file:startup.pl >> > -- >> > use lib qw(/path/to/foo); >> > print STDERR "Loading startup.pl"; >> > 1; >> > >> > And then load that with PerlRequire? >> > >> > Came to think of it: could you try without Apache::DB? Maybe that's the >> > source of your problems. >> > >> > Finally, as a quick fix to your original problem: maybe you can use >> PERL5LIB: >> > >> > PerlSetEnv PERL5LIB /path >> > >> > in your httpd.conf. >> > >> > This is all I can come up with, sorry. >> > >> > >At 09:57 AM 5/19/2002 +0200, you wrote: >> > >>At 02:50 19.05.2002, Gregory Matthews wrote: >> > >>>Tried that...doesn't work either. >> > >>> >> > >>>@INC still cannot find my config.pl file. If I add the use lib >> > >>>statement to my script, all is o.k.. If I try to add it to my >> > >>>startup.pl and call it at startup time, I get the error from @INC. >> > >> >> > >>Are you sure you are loading your startup.pl file before your module? >> > >>Are you sure it's getting loaded at all? >> > >>Try adding a debug statement in your startup.pl: >> > >> >> > >>print STDERR 'Loading startup.pl @INC = ', join ":", @INC; >> > >> >> > >>after your "use lib" part. >> > >> >> > >>>At 06:16 PM 5/18/2002 -0400, you wrote: >> > I did this: >> > >> > use lib qw(); >> > >> > That adds the path to @INC. Someone correct me if that's the wrong way >> > to do >> > things >> > >> > - Original Message - >> > From: "Gregory Matthews" <[EMAIL PROTECTED]> >> > To: <[EMAIL PROTECTED]> >> > Sent: Saturday, May 18, 2002 6:12 PM >> > Subject: Modifying @INC via startup.pl >> > >> > >> > > I am trying to: >> > > >> > > use lib qw(/dir/foo); >> > > >> > > in my startup.pl file but @INC is NOT showing the path. I keep >> getting >> > > "Can't locate config.pl in @INC" errors after restarting the >> server and >> > > calling the script. >> > > >> > > My prog reads: >> > > >> > > require qq(config.pl); >> > > >> > > I am not sure what is going on. @INC shows: >> > > >> > > (@INC contains: /usr/libdata/perl/5.00503/mach >> /usr/libdata/perl/5.00503 >> > > /usr/local/lib/perl5/site_perl/5.005/i386-freebsd >> > > /usr/local/lib/perl5/site_perl/5.005 . /usr/local/www/ >> > > /usr/local/www/lib/perl) at (eval 265) line 22. >> > > >> > > Why is the path to config.pl not showing up? My defaults.conf >> reads: >> > > >> > > # mod_perl setup >> > > Alias /perl /usr/local/www/vhosts/host.com/perl >> > > PerlRequire /usr/local/www/vhosts/host.com/perl/libs/startup.pl >> > > PerlSetEnv PERLDB_OPTS "NonStop=1 LineInfo=/tmp/db.out AutoTrace=1 >> > frame=2" >> > > PerlModule Apache::DB >> > > PerlWarn On >> > > PerlTaintCheck On >> > > >> > >PerlFixupHandler +Apache::DB >> > >SetHandler perl-script >> > >PerlHandler +Apache::Registry >> > >Options +ExecCGI >> > >allow from all >> > >PerlSendHeader Off >> > > >> > > # end mod_perl setup >> > > >> > > Thanks everyone. This list is a lifesaver! >> > > >> > > Gregory >> > > >> > > >> > > >> > > >> > >> >> > >>-- >> > >>Per Einar Ellefsen >> > >>[EMAIL PROTECTED] >> > >> > >> >> >>-- >>[EMAIL PROTECTED] | What I like about deadlines is the lovely >>http://BareMetal.com/ | whooshing they make as they rush past. >>web hosting since '95 | - Douglas Adams >
Re: Modifying @INC via startup.pl
Tom: Fixed it. I needed to add a 1; to the end of my startup.pl file. I was using a startup.pl file example from apache.org which did NOT have this. Then in doing some research, found out that it needed it. Now the @INC is being updated at startup. Thanks for your help! Gregory At 11:40 AM 5/19/2002 -0700, you wrote: >Gregory, are you _sure_ you have the right error_log ? You didn't send >mod_perl errors somewhere different from normal? That is my most common >reason for not being able to find diagnostic messages... (looking in the >normal webserver logs, or the ssl logs, as compared to the mod_perl >daemon's error logs) > >On Sun, 19 May 2002, Per Einar Ellefsen wrote: > > > At 18:57 19.05.2002, Gregory Matthews wrote: > > >I added the below STDER statement and did NOT see the printout either on > > >screen or in my error_log file. > > > > > >It sounds like then my startup.pl file is not even being loaded? Funny > > >though I can deliberately put a bogus module name or misspell use > > >stric; and I will be unable to restart the server because of it. Can > > >this file be "read" and checked for correctness but not "loaded"? > > > > Wow, now this is weird. Could you try something as simple as > > > > file:startup.pl > > -- > > use lib qw(/path/to/foo); > > print STDERR "Loading startup.pl"; > > 1; > > > > And then load that with PerlRequire? > > > > Came to think of it: could you try without Apache::DB? Maybe that's the > > source of your problems. > > > > Finally, as a quick fix to your original problem: maybe you can use > PERL5LIB: > > > > PerlSetEnv PERL5LIB /path > > > > in your httpd.conf. > > > > This is all I can come up with, sorry. > > > > >At 09:57 AM 5/19/2002 +0200, you wrote: > > >>At 02:50 19.05.2002, Gregory Matthews wrote: > > >>>Tried that...doesn't work either. > > >>> > > >>>@INC still cannot find my config.pl file. If I add the use lib > > >>>statement to my script, all is o.k.. If I try to add it to my > > >>>startup.pl and call it at startup time, I get the error from @INC. > > >> > > >>Are you sure you are loading your startup.pl file before your module? > > >>Are you sure it's getting loaded at all? > > >>Try adding a debug statement in your startup.pl: > > >> > > >>print STDERR 'Loading startup.pl @INC = ', join ":", @INC; > > >> > > >>after your "use lib" part. > > >> > > >>>At 06:16 PM 5/18/2002 -0400, you wrote: > > I did this: > > > > use lib qw(); > > > > That adds the path to @INC. Someone correct me if that's the wrong way > > to do > > things > > > > - Original Message - > > From: "Gregory Matthews" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Saturday, May 18, 2002 6:12 PM > > Subject: Modifying @INC via startup.pl > > > > > > > I am trying to: > > > > > > use lib qw(/dir/foo); > > > > > > in my startup.pl file but @INC is NOT showing the path. I keep > getting > > > "Can't locate config.pl in @INC" errors after restarting the > server and > > > calling the script. > > > > > > My prog reads: > > > > > > require qq(config.pl); > > > > > > I am not sure what is going on. @INC shows: > > > > > > (@INC contains: /usr/libdata/perl/5.00503/mach > /usr/libdata/perl/5.00503 > > > /usr/local/lib/perl5/site_perl/5.005/i386-freebsd > > > /usr/local/lib/perl5/site_perl/5.005 . /usr/local/www/ > > > /usr/local/www/lib/perl) at (eval 265) line 22. > > > > > > Why is the path to config.pl not showing up? My defaults.conf > reads: > > > > > > # mod_perl setup > > > Alias /perl /usr/local/www/vhosts/host.com/perl > > > PerlRequire /usr/local/www/vhosts/host.com/perl/libs/startup.pl > > > PerlSetEnv PERLDB_OPTS "NonStop=1 LineInfo=/tmp/db.out AutoTrace=1 > > frame=2" > > > PerlModule Apache::DB > > > PerlWarn On > > > PerlTaintCheck On > > > > > >PerlFixupHandler +Apache::DB > > >SetHandler perl-script > > >PerlHandler +Apache::Registry > > >Options +ExecCGI > > >allow from all > > >PerlSendHeader Off > > > > > > # end mod_perl setup > > > > > > Thanks everyone. This list is a lifesaver! > > > > > > Gregory > > > > > > > > > > > > > > >> > > >>-- > > >>Per Einar Ellefsen > > >>[EMAIL PROTECTED] > > > > > > >-- >[EMAIL PROTECTED] | What I like about deadlines is the lovely >http://BareMetal.com/ | whooshing they make as they rush past. >web hosting since '95 | - Douglas Adams
Re: Modifying @INC via startup.pl
Tom: No, same error_log as usual. I think this problem may have something to do with my host. I am on a "virtual private server", not dedicated, although, I do have root access. The way they configure the servers load in a portion of the mod_perl directives before my Location block, i.e., my vhosts.conf call looks like this: # mod_perl setup Alias /perl /usr/local/www/vhosts/host.com/perl PerlSetEnv PERLDB_OPTS "NonStop=1 LineInfo=/tmp/db.out AutoTrace=1 frame=2" PerlModule Apache::DB PerlWarn On PerlTaintCheck On PerlFixupHandler Apache::DB SetHandler perl-script PerlHandler Apache::Registry OptionsExecCGI allow from all PerlSendHeaderOff # end mod_perl setup Notice that I do NOT need to call PerlModule Apache::Registry. It is already loaded. I may give up on the startup.pl file and simply add a ... section directly. Will this solve the problem? Gregory At 11:40 AM 5/19/2002 -0700, you wrote: >Gregory, are you _sure_ you have the right error_log ? You didn't send >mod_perl errors somewhere different from normal? That is my most common >reason for not being able to find diagnostic messages... (looking in the >normal webserver logs, or the ssl logs, as compared to the mod_perl >daemon's error logs) > >On Sun, 19 May 2002, Per Einar Ellefsen wrote: > > > At 18:57 19.05.2002, Gregory Matthews wrote: > > >I added the below STDER statement and did NOT see the printout either on > > >screen or in my error_log file. > > > > > >It sounds like then my startup.pl file is not even being loaded? Funny > > >though I can deliberately put a bogus module name or misspell use > > >stric; and I will be unable to restart the server because of it. Can > > >this file be "read" and checked for correctness but not "loaded"? > > > > Wow, now this is weird. Could you try something as simple as > > > > file:startup.pl > > -- > > use lib qw(/path/to/foo); > > print STDERR "Loading startup.pl"; > > 1; > > > > And then load that with PerlRequire? > > > > Came to think of it: could you try without Apache::DB? Maybe that's the > > source of your problems. > > > > Finally, as a quick fix to your original problem: maybe you can use > PERL5LIB: > > > > PerlSetEnv PERL5LIB /path > > > > in your httpd.conf. > > > > This is all I can come up with, sorry. > > > > >At 09:57 AM 5/19/2002 +0200, you wrote: > > >>At 02:50 19.05.2002, Gregory Matthews wrote: > > >>>Tried that...doesn't work either. > > >>> > > >>>@INC still cannot find my config.pl file. If I add the use lib > > >>>statement to my script, all is o.k.. If I try to add it to my > > >>>startup.pl and call it at startup time, I get the error from @INC. > > >> > > >>Are you sure you are loading your startup.pl file before your module? > > >>Are you sure it's getting loaded at all? > > >>Try adding a debug statement in your startup.pl: > > >> > > >>print STDERR 'Loading startup.pl @INC = ', join ":", @INC; > > >> > > >>after your "use lib" part. > > >> > > >>>At 06:16 PM 5/18/2002 -0400, you wrote: > > I did this: > > > > use lib qw(); > > > > That adds the path to @INC. Someone correct me if that's the wrong way > > to do > > things > > > > - Original Message - > > From: "Gregory Matthews" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Saturday, May 18, 2002 6:12 PM > > Subject: Modifying @INC via startup.pl > > > > > > > I am trying to: > > > > > > use lib qw(/dir/foo); > > > > > > in my startup.pl file but @INC is NOT showing the path. I keep > getting > > > "Can't locate config.pl in @INC" errors after restarting the > server and > > > calling the script. > > > > > > My prog reads: > > > > > > require qq(config.pl); > > > > > > I am not sure what is going on. @INC shows: > > > > > > (@INC contains: /usr/libdata/perl/5.00503/mach > /usr/libdata/perl/5.00503 > > > /usr/local/lib/perl5/site_perl/5.005/i386-freebsd > > > /usr/local/lib/perl5/site_perl/5.005 . /usr/local/www/ > > > /usr/local/www/lib/perl) at (eval 265) line 22. > > > > > > Why is the path to config.pl not showing up? My defaults.conf > reads: > > > > > > # mod_perl setup > > > Alias /perl /usr/local/www/vhosts/host.com/perl > > > PerlRequire /usr/local/www/vhosts/host.com/perl/libs/startup.pl > > > PerlSetEnv PERLDB_OPTS "NonStop=1 LineInfo=/tmp/db.out AutoTrace=1 > > frame=2" > > > PerlModule Apache::DB > > > PerlWarn On > > > PerlTaintCheck On > > > > > >PerlFixupHandler +Apache::DB > > >SetHandler perl-script > > >PerlHandler +Apache::Registry > > >Options +ExecCGI > > >allow from all > > >PerlSendHeader Off > > > > > > # end mod_perl setup > > > > > > Tha
Re: Modifying @INC via startup.pl
At 18:57 19.05.2002, Gregory Matthews wrote: >I added the below STDER statement and did NOT see the printout either on >screen or in my error_log file. > >It sounds like then my startup.pl file is not even being loaded? Funny >though I can deliberately put a bogus module name or misspell use >stric; and I will be unable to restart the server because of it. Can >this file be "read" and checked for correctness but not "loaded"? Wow, now this is weird. Could you try something as simple as file:startup.pl -- use lib qw(/path/to/foo); print STDERR "Loading startup.pl"; 1; And then load that with PerlRequire? Came to think of it: could you try without Apache::DB? Maybe that's the source of your problems. Finally, as a quick fix to your original problem: maybe you can use PERL5LIB: PerlSetEnv PERL5LIB /path in your httpd.conf. This is all I can come up with, sorry. >At 09:57 AM 5/19/2002 +0200, you wrote: >>At 02:50 19.05.2002, Gregory Matthews wrote: >>>Tried that...doesn't work either. >>> >>>@INC still cannot find my config.pl file. If I add the use lib >>>statement to my script, all is o.k.. If I try to add it to my >>>startup.pl and call it at startup time, I get the error from @INC. >> >>Are you sure you are loading your startup.pl file before your module? >>Are you sure it's getting loaded at all? >>Try adding a debug statement in your startup.pl: >> >>print STDERR 'Loading startup.pl @INC = ', join ":", @INC; >> >>after your "use lib" part. >> >>>At 06:16 PM 5/18/2002 -0400, you wrote: I did this: use lib qw(); That adds the path to @INC. Someone correct me if that's the wrong way to do things - Original Message - From: "Gregory Matthews" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Saturday, May 18, 2002 6:12 PM Subject: Modifying @INC via startup.pl > I am trying to: > > use lib qw(/dir/foo); > > in my startup.pl file but @INC is NOT showing the path. I keep getting > "Can't locate config.pl in @INC" errors after restarting the server and > calling the script. > > My prog reads: > > require qq(config.pl); > > I am not sure what is going on. @INC shows: > > (@INC contains: /usr/libdata/perl/5.00503/mach /usr/libdata/perl/5.00503 > /usr/local/lib/perl5/site_perl/5.005/i386-freebsd > /usr/local/lib/perl5/site_perl/5.005 . /usr/local/www/ > /usr/local/www/lib/perl) at (eval 265) line 22. > > Why is the path to config.pl not showing up? My defaults.conf reads: > > # mod_perl setup > Alias /perl /usr/local/www/vhosts/host.com/perl > PerlRequire /usr/local/www/vhosts/host.com/perl/libs/startup.pl > PerlSetEnv PERLDB_OPTS "NonStop=1 LineInfo=/tmp/db.out AutoTrace=1 frame=2" > PerlModule Apache::DB > PerlWarn On > PerlTaintCheck On > >PerlFixupHandler +Apache::DB >SetHandler perl-script >PerlHandler +Apache::Registry >Options +ExecCGI >allow from all >PerlSendHeader Off > > # end mod_perl setup > > Thanks everyone. This list is a lifesaver! > > Gregory > > > > >> >>-- >>Per Einar Ellefsen >>[EMAIL PROTECTED]
Re: Modifying @INC via startup.pl
If I run apachectl configtest, I can see the below statement, "Loading startup.pl...", so it appears that it is at least reading it (which I knew before), but for some reason, @INC does not show an updated path per my call, use lib qw(...); . In addition, I am using the Apache::DBI module with the Apache::DBI->connect_on_init option, and even though I put in bogus database info, Apache starts fine with no errors? Any ideas on what is going on? Gregory At 09:57 AM 5/19/2002 +0200, you wrote: >At 02:50 19.05.2002, Gregory Matthews wrote: >>Tried that...doesn't work either. >> >>@INC still cannot find my config.pl file. If I add the use lib statement >>to my script, all is o.k.. If I try to add it to my startup.pl and call >>it at startup time, I get the error from @INC. > >Are you sure you are loading your startup.pl file before your module? >Are you sure it's getting loaded at all? >Try adding a debug statement in your startup.pl: > >print STDERR 'Loading startup.pl @INC = ', join ":", @INC; > >after your "use lib" part. > >>At 06:16 PM 5/18/2002 -0400, you wrote: >>>I did this: >>> >>>use lib qw(); >>> >>>That adds the path to @INC. Someone correct me if that's the wrong way to do >>>things >>> >>>- Original Message - >>>From: "Gregory Matthews" <[EMAIL PROTECTED]> >>>To: <[EMAIL PROTECTED]> >>>Sent: Saturday, May 18, 2002 6:12 PM >>>Subject: Modifying @INC via startup.pl >>> >>> >>> > I am trying to: >>> > >>> > use lib qw(/dir/foo); >>> > >>> > in my startup.pl file but @INC is NOT showing the path. I keep getting >>> > "Can't locate config.pl in @INC" errors after restarting the server and >>> > calling the script. >>> > >>> > My prog reads: >>> > >>> > require qq(config.pl); >>> > >>> > I am not sure what is going on. @INC shows: >>> > >>> > (@INC contains: /usr/libdata/perl/5.00503/mach /usr/libdata/perl/5.00503 >>> > /usr/local/lib/perl5/site_perl/5.005/i386-freebsd >>> > /usr/local/lib/perl5/site_perl/5.005 . /usr/local/www/ >>> > /usr/local/www/lib/perl) at (eval 265) line 22. >>> > >>> > Why is the path to config.pl not showing up? My defaults.conf reads: >>> > >>> > # mod_perl setup >>> > Alias /perl /usr/local/www/vhosts/host.com/perl >>> > PerlRequire /usr/local/www/vhosts/host.com/perl/libs/startup.pl >>> > PerlSetEnv PERLDB_OPTS "NonStop=1 LineInfo=/tmp/db.out AutoTrace=1 >>>frame=2" >>> > PerlModule Apache::DB >>> > PerlWarn On >>> > PerlTaintCheck On >>> > >>> >PerlFixupHandler +Apache::DB >>> >SetHandler perl-script >>> >PerlHandler +Apache::Registry >>> >Options +ExecCGI >>> >allow from all >>> >PerlSendHeader Off >>> > >>> > # end mod_perl setup >>> > >>> > Thanks everyone. This list is a lifesaver! >>> > >>> > Gregory >>> > >>> > >>> > >>> > >> > >-- >Per Einar Ellefsen >[EMAIL PROTECTED] > >
Re: Modifying @INC via startup.pl
I added the below STDER statement and did NOT see the printout either on screen or in my error_log file. It sounds like then my startup.pl file is not even being loaded? Funny though I can deliberately put a bogus module name or misspell use stric; and I will be unable to restart the server because of it. Can this file be "read" and checked for correctness but not "loaded"? Gregory At 09:57 AM 5/19/2002 +0200, you wrote: >At 02:50 19.05.2002, Gregory Matthews wrote: >>Tried that...doesn't work either. >> >>@INC still cannot find my config.pl file. If I add the use lib statement >>to my script, all is o.k.. If I try to add it to my startup.pl and call >>it at startup time, I get the error from @INC. > >Are you sure you are loading your startup.pl file before your module? >Are you sure it's getting loaded at all? >Try adding a debug statement in your startup.pl: > >print STDERR 'Loading startup.pl @INC = ', join ":", @INC; > >after your "use lib" part. > >>At 06:16 PM 5/18/2002 -0400, you wrote: >>>I did this: >>> >>>use lib qw(); >>> >>>That adds the path to @INC. Someone correct me if that's the wrong way to do >>>things >>> >>>- Original Message - >>>From: "Gregory Matthews" <[EMAIL PROTECTED]> >>>To: <[EMAIL PROTECTED]> >>>Sent: Saturday, May 18, 2002 6:12 PM >>>Subject: Modifying @INC via startup.pl >>> >>> >>> > I am trying to: >>> > >>> > use lib qw(/dir/foo); >>> > >>> > in my startup.pl file but @INC is NOT showing the path. I keep getting >>> > "Can't locate config.pl in @INC" errors after restarting the server and >>> > calling the script. >>> > >>> > My prog reads: >>> > >>> > require qq(config.pl); >>> > >>> > I am not sure what is going on. @INC shows: >>> > >>> > (@INC contains: /usr/libdata/perl/5.00503/mach /usr/libdata/perl/5.00503 >>> > /usr/local/lib/perl5/site_perl/5.005/i386-freebsd >>> > /usr/local/lib/perl5/site_perl/5.005 . /usr/local/www/ >>> > /usr/local/www/lib/perl) at (eval 265) line 22. >>> > >>> > Why is the path to config.pl not showing up? My defaults.conf reads: >>> > >>> > # mod_perl setup >>> > Alias /perl /usr/local/www/vhosts/host.com/perl >>> > PerlRequire /usr/local/www/vhosts/host.com/perl/libs/startup.pl >>> > PerlSetEnv PERLDB_OPTS "NonStop=1 LineInfo=/tmp/db.out AutoTrace=1 >>>frame=2" >>> > PerlModule Apache::DB >>> > PerlWarn On >>> > PerlTaintCheck On >>> > >>> >PerlFixupHandler +Apache::DB >>> >SetHandler perl-script >>> >PerlHandler +Apache::Registry >>> >Options +ExecCGI >>> >allow from all >>> >PerlSendHeader Off >>> > >>> > # end mod_perl setup >>> > >>> > Thanks everyone. This list is a lifesaver! >>> > >>> > Gregory >>> > >>> > >>> > >>> > >> > >-- >Per Einar Ellefsen >[EMAIL PROTECTED] > >
Re: Modifying @INC via startup.pl
At 02:50 19.05.2002, Gregory Matthews wrote: >Tried that...doesn't work either. > >@INC still cannot find my config.pl file. If I add the use lib statement >to my script, all is o.k.. If I try to add it to my startup.pl and call >it at startup time, I get the error from @INC. Are you sure you are loading your startup.pl file before your module? Are you sure it's getting loaded at all? Try adding a debug statement in your startup.pl: print STDERR 'Loading startup.pl @INC = ', join ":", @INC; after your "use lib" part. >At 06:16 PM 5/18/2002 -0400, you wrote: >>I did this: >> >>use lib qw(); >> >>That adds the path to @INC. Someone correct me if that's the wrong way to do >>things >> >>- Original Message - >>From: "Gregory Matthews" <[EMAIL PROTECTED]> >>To: <[EMAIL PROTECTED]> >>Sent: Saturday, May 18, 2002 6:12 PM >>Subject: Modifying @INC via startup.pl >> >> >> > I am trying to: >> > >> > use lib qw(/dir/foo); >> > >> > in my startup.pl file but @INC is NOT showing the path. I keep getting >> > "Can't locate config.pl in @INC" errors after restarting the server and >> > calling the script. >> > >> > My prog reads: >> > >> > require qq(config.pl); >> > >> > I am not sure what is going on. @INC shows: >> > >> > (@INC contains: /usr/libdata/perl/5.00503/mach /usr/libdata/perl/5.00503 >> > /usr/local/lib/perl5/site_perl/5.005/i386-freebsd >> > /usr/local/lib/perl5/site_perl/5.005 . /usr/local/www/ >> > /usr/local/www/lib/perl) at (eval 265) line 22. >> > >> > Why is the path to config.pl not showing up? My defaults.conf reads: >> > >> > # mod_perl setup >> > Alias /perl /usr/local/www/vhosts/host.com/perl >> > PerlRequire /usr/local/www/vhosts/host.com/perl/libs/startup.pl >> > PerlSetEnv PERLDB_OPTS "NonStop=1 LineInfo=/tmp/db.out AutoTrace=1 >>frame=2" >> > PerlModule Apache::DB >> > PerlWarn On >> > PerlTaintCheck On >> > >> >PerlFixupHandler +Apache::DB >> >SetHandler perl-script >> >PerlHandler +Apache::Registry >> >Options +ExecCGI >> >allow from all >> >PerlSendHeader Off >> > >> > # end mod_perl setup >> > >> > Thanks everyone. This list is a lifesaver! >> > >> > Gregory >> > >> > >> > >> > > > -- Per Einar Ellefsen [EMAIL PROTECTED]
Re: Modifying @INC via startup.pl
Perhaps this might work: BEGIN { use lib qw(/dir/foo); } On Sat, May 18, 2002 at 07:50:01PM -0500, Gregory Matthews babbled thus: > X-Mailer: QUALCOMM Windows Eudora Version 5.1 > Date: Sat, 18 May 2002 19:50:01 -0500 > To: "Jaberwocky" <[EMAIL PROTECTED]> > From: Gregory Matthews <[EMAIL PROTECTED]> > Subject: Re: Modifying @INC via startup.pl > Cc: [EMAIL PROTECTED] > > Tried that...doesn't work either. > > @INC still cannot find my config.pl file. If I add the use lib statement > to my script, all is o.k.. If I try to add it to my startup.pl and call it > at startup time, I get the error from @INC. > > > > At 06:16 PM 5/18/2002 -0400, you wrote: > >I did this: > > > >use lib qw(); > > > >That adds the path to @INC. Someone correct me if that's the wrong way to > >do > >things > > > >- Original Message - > >From: "Gregory Matthews" <[EMAIL PROTECTED]> > >To: <[EMAIL PROTECTED]> > >Sent: Saturday, May 18, 2002 6:12 PM > >Subject: Modifying @INC via startup.pl > > > > > >> I am trying to: > >> > >> use lib qw(/dir/foo); > >> > >> in my startup.pl file but @INC is NOT showing the path. I keep getting > >> "Can't locate config.pl in @INC" errors after restarting the server and > >> calling the script. > >> > >> My prog reads: > >> > >> require qq(config.pl); > >> > >> I am not sure what is going on. @INC shows: > >> > >> (@INC contains: /usr/libdata/perl/5.00503/mach /usr/libdata/perl/5.00503 > >> /usr/local/lib/perl5/site_perl/5.005/i386-freebsd > >> /usr/local/lib/perl5/site_perl/5.005 . /usr/local/www/ > >> /usr/local/www/lib/perl) at (eval 265) line 22. > >> > >> Why is the path to config.pl not showing up? My defaults.conf reads: > >> > >> # mod_perl setup > >> Alias /perl /usr/local/www/vhosts/host.com/perl > >> PerlRequire /usr/local/www/vhosts/host.com/perl/libs/startup.pl > >> PerlSetEnv PERLDB_OPTS "NonStop=1 LineInfo=/tmp/db.out AutoTrace=1 > >frame=2" > >> PerlModule Apache::DB > >> PerlWarn On > >> PerlTaintCheck On > >> > >>PerlFixupHandler +Apache::DB > >>SetHandler perl-script > >>PerlHandler +Apache::Registry > >>Options +ExecCGI > >>allow from all > >>PerlSendHeader Off > >> > >> # end mod_perl setup > >> > >> Thanks everyone. This list is a lifesaver! > >> > >> Gregory > >> > >> > >> > >> > > -- Mike Edwards Brainbench certified Master Linux Administrator http://www.brainbench.com/transcript.jsp?pid=158188 --- Unsolicited advertisments to this address are not welcome.
Re: Modifying @INC via startup.pl
Tried that...doesn't work either. @INC still cannot find my config.pl file. If I add the use lib statement to my script, all is o.k.. If I try to add it to my startup.pl and call it at startup time, I get the error from @INC. At 06:16 PM 5/18/2002 -0400, you wrote: >I did this: > >use lib qw(); > >That adds the path to @INC. Someone correct me if that's the wrong way to do >things > >- Original Message - >From: "Gregory Matthews" <[EMAIL PROTECTED]> >To: <[EMAIL PROTECTED]> >Sent: Saturday, May 18, 2002 6:12 PM >Subject: Modifying @INC via startup.pl > > > > I am trying to: > > > > use lib qw(/dir/foo); > > > > in my startup.pl file but @INC is NOT showing the path. I keep getting > > "Can't locate config.pl in @INC" errors after restarting the server and > > calling the script. > > > > My prog reads: > > > > require qq(config.pl); > > > > I am not sure what is going on. @INC shows: > > > > (@INC contains: /usr/libdata/perl/5.00503/mach /usr/libdata/perl/5.00503 > > /usr/local/lib/perl5/site_perl/5.005/i386-freebsd > > /usr/local/lib/perl5/site_perl/5.005 . /usr/local/www/ > > /usr/local/www/lib/perl) at (eval 265) line 22. > > > > Why is the path to config.pl not showing up? My defaults.conf reads: > > > > # mod_perl setup > > Alias /perl /usr/local/www/vhosts/host.com/perl > > PerlRequire /usr/local/www/vhosts/host.com/perl/libs/startup.pl > > PerlSetEnv PERLDB_OPTS "NonStop=1 LineInfo=/tmp/db.out AutoTrace=1 >frame=2" > > PerlModule Apache::DB > > PerlWarn On > > PerlTaintCheck On > > > >PerlFixupHandler +Apache::DB > >SetHandler perl-script > >PerlHandler +Apache::Registry > >Options +ExecCGI > >allow from all > >PerlSendHeader Off > > > > # end mod_perl setup > > > > Thanks everyone. This list is a lifesaver! > > > > Gregory > > > > > > > >
Re: Modifying @INC via startup.pl
I did this: use lib qw(); That adds the path to @INC. Someone correct me if that's the wrong way to do things - Original Message - From: "Gregory Matthews" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Saturday, May 18, 2002 6:12 PM Subject: Modifying @INC via startup.pl > I am trying to: > > use lib qw(/dir/foo); > > in my startup.pl file but @INC is NOT showing the path. I keep getting > "Can't locate config.pl in @INC" errors after restarting the server and > calling the script. > > My prog reads: > > require qq(config.pl); > > I am not sure what is going on. @INC shows: > > (@INC contains: /usr/libdata/perl/5.00503/mach /usr/libdata/perl/5.00503 > /usr/local/lib/perl5/site_perl/5.005/i386-freebsd > /usr/local/lib/perl5/site_perl/5.005 . /usr/local/www/ > /usr/local/www/lib/perl) at (eval 265) line 22. > > Why is the path to config.pl not showing up? My defaults.conf reads: > > # mod_perl setup > Alias /perl /usr/local/www/vhosts/host.com/perl > PerlRequire /usr/local/www/vhosts/host.com/perl/libs/startup.pl > PerlSetEnv PERLDB_OPTS "NonStop=1 LineInfo=/tmp/db.out AutoTrace=1 frame=2" > PerlModule Apache::DB > PerlWarn On > PerlTaintCheck On > >PerlFixupHandler +Apache::DB >SetHandler perl-script >PerlHandler +Apache::Registry >Options +ExecCGI >allow from all >PerlSendHeader Off > > # end mod_perl setup > > Thanks everyone. This list is a lifesaver! > > Gregory > > > >