DirectNET

Data Center Management Solutions including UPS Systems, Data Center Cooling, KVM over IP & IP Power Strips, Server Racks and Server Rack accessories; KVM Switches and KVM Extenders; Rackmount Monitors and Rackmount Keyboards.


NAVIGATION
Home
Store
INSIDE MAC
Television Shows
Broadcast Shows
Daily News Shows
Special Shows
EVENTS
DAILY TIPS
Design
Mac OS X
Mac OS X UNIX
COMMUNITY
Surveys
NEWS
Current
Press
Archive
FEATURES
Editorial
Dr. Mac
Reviews
Reader Reports
RESOURCES
FAQ
Documentation
Learning Center
MAN pages
Glossary
Tutorials
Tips
Links

OUR PARTNERS


       Apache::RegistryLoader - Compile Apache::Registry scripts
       at server startup


SYNOPSIS

        #in PerlScript

        use Apache::RegistryLoader ();

        my $r = Apache::RegistryLoader->new;

        $r->handler($uri, $filename);

        $r->handler($uri, $filename, $virtual_hostname);


DESCRIPTION

       This modules allows compilation of Apache::Registry
       scripts at server startup.  The script's handler routine
       is compiled by the parent server, of which children get a
       copy.  The Apache::RegistryLoader `handler' method takes
       arguments of `uri' and the `filename'.  URI to filename
       translation normally doesn't happen until HTTP request
       time, so we're forced to roll our own translation.

       If filename is omitted and a `trans' routine was not
       defined, the loader will try using the uri relative to
       ServerRoot.  Example:

        #in httpd.conf
        ServerRoot /opt/www/apache
        Alias /perl/ /opt/www/apache/perl

        #in PerlScript
        use Apache::RegistryLoader ();

        #/opt/www/apache/perl/test.pl
        #is the script loaded from disk here:
        Apache::RegistryLoader->new->handler("/perl/test.pl");

       To make the loader smarter about the uri->filename trans-
       lation, you may provide the `new' method with a `trans'
       function to translate the uri to filename.

       The following example will pre-load all files ending with
       `.pl' in the perl-scripts/ directory relative to Server-
       Root.  The example code assumes the Location URI `/perl'
       is an Alias to this directory.

        {
            use Cwd ();
            use Apache::RegistryLoader ();
            use DirHandle ();

            my $rl = Apache::RegistryLoader->new(trans => sub {
                my $uri = shift;
                $uri =~ s:^/perl/:/perl-scripts/:;
                return Apache->server_root_relative($uri);
            });

            my $dh = DirHandle->new($dir) or die $!;

            for my $file ($dh->read) {
                next unless $file =~ /\.pl$/;
                $rl->handler("/perl/$file");
            }
        }


AUTHORS

       Doug MacEachern

       Stas Bekman (Rewrote the handler() to report and handle
       all the possible erroneous conditions)


SEE ALSO

       Apache::Registry(3), Apache(3), mod_perl(3)

Copyright © 2000-2010 Inside Mac Media, Inc. All rights reserved.
Apple assumes no responsibility with regard to the selection, performance, or use of the products or services. All understandings, agreements, or warranties, if any, take place directly between the vendors and prospective users.
Apple, the Apple logo, Mac, PowerMac G4, PowerMac G5, Xserve, Xserve RAID, PowerBook, iBook, Airport, AirPort Extreme, iMac, eMac, iLife, iMovie, iCal, iPhoto, iTunes, QuickTime, FireWire, iPod, iSight, AppleWorks, Macintosh, Jaguar, Panther, Mac OS, Mac OS X and Mac OS X Server are trademarks of Apple Computer, Inc.