manpagez: man pages & more
man Apache::StatINC(3)
Home | html | info | man
Apache::StatINC(3)    User Contributed Perl Documentation   Apache::StatINC(3)




NAME

       Apache::StatINC - Reload %INC files when updated on disk


SYNOPSIS

         #httpd.conf or some such
         #can be any Perl*Handler
         PerlInitHandler Apache::StatINC


DESCRIPTION

       When Perl pulls a file via "require", it stores the filename in the
       global hash %INC.  The next time Perl tries to "require" the same file,
       it sees the file in %INC and does not reload from disk.  This module's
       handler iterates over %INC and reloads the file if it has changed on
       disk.

       Note that StatINC operates on the current context of @INC.  Which
       means, when called as a Perl*Handler it will not see @INC paths added
       or removed by Apache::Registry scripts, as the value of @INC is saved
       on server startup and restored to that value after each request.  In
       other words, if you want StatINC to work with modules that live in
       custom @INC paths, you should modify @INC when the server is started.
       Besides, 'use lib' in startup scripts, you can also set the PERL5LIB
       variable in the httpd's environment to include any non-standard 'lib'
       directories that you choose.  For example, you might use a script
       called 'start_httpd' to start apache, and include a line like this:

               PERL5LIB=/usr/local/foo/myperllibs; export PERL5LIB

       When you have problems with modules not being reloaded, please refer to
       the following lines in 'perlmodlib':

       "Always use -w. Try to "use strict;" (or "use strict qw(...);").
       Remember that you can add "no strict qw(...);" to individual blocks of
       code that need less strictness. Always use -w. Always use -w!  Follow
       the guidelines in the perlstyle(1) manual."

       Warnings when running under mod_perl is enabled with 'PerlWarn On' in
       your httpd.conf.

       It will most likely help you to find the problem. Really.


OPTIONS

       StatINC_UndefOnReload
           Normally, StatINC will turn of warnings to avoid "Subroutine
           redefined" warnings when it reloads a file.  However, this does not
           disable the Perl mandatory warning when re-defining "constant"
           subroutines (see perldoc perlsub).  With this option On, StatINC
           will invoke the Apache::Symbol undef_functions method to avoid
           these mandatory warnings:

            PerlSetVar StatINC_UndefOnReload On

       StatINC_Debug
           You can make StatINC tell when it reloads a module by setting this
           option to on.

            PerlSetVar StatINC_Debug 1

           The only used debug level is currently 1.


SEE ALSO

       mod_perl(3)


AUTHOR

       Currently maintained by Ask Bjoern Hansen <ask@netcetera.dk>.  Written
       by Doug MacEachern.



perl v5.8.8                       2001-07-18                Apache::StatINC(3)

Mac OS X 10.5 Server - Generated Sun Jun 15 13:59:07 CDT 2008
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.