Apache::Reload works by performing a stat on every file in %INC and calling
require for all the files that changed.  It's quite possible that some of
the files in %INC are using relative paths (often '.' is in @INC).  So, Perl
was able to load the file originally because the initial 'use' or 'require'
was after Apache changed to your directory.  However, when Apache::Reload
goes to look for the file, it can't find it because the current directory is
different (most likely the ServerRoot).

You can fix the problem by installing your modules in a directory that is
fully qualified in @INC.

- Kyle

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]On Behalf Of
Bryan Coon
Sent: Tuesday, July 31, 2001 3:16 PM
To: '[EMAIL PROTECTED]'
Subject: Apache::Reload???


I must have missed something in setting up Apache::Reload.  What I want is
simple that when I make a change in my scripts I dont have to restart the
Apache server...
I put
PerlInitHandler Apache::Reload
in my httpd.conf, and added 'use Apache::Reload' to the modules that I want
to be reloaded on change.  But I get the following warning message in my
apache logs:
Apache::Reload: Can't locate MyModule.pm for every module I have added
Apache::Reload to.

How do I do this so it works?  The docs on Reload are a bit sparse...

Thanks!
Bryan

Reply via email to