Konstrukt::Handler::Apache - Handler for an Apache request
Handle an apache request
Konstrukt::Handler::Apache::handler($request);
Plugins and other module may access some request-specific data:
#the absolute path to the processed file $Konstrukt::Handler->{abs_filename} #the path to the processed file relative to the document root $Konstrukt::Handler->{filename} #the apache request object. shouldn't be used for compatibility reasons. $Konstrukt::Handler->{apache_request} #the environment variables of this process as an hashref $Konstrukt::Handler->{ENV} #cookies as an hashref of cookie objects $Konstrukt::Handler->{cookies} #create new cookie: $Konstrukt::Handler->{foo} = CGI::Cookie->new(-name => 'foo', -value => 'bar');
Parses the requested file against special (e.g. <&...&>) tags.
Tell Apache to apply the PerlHandler on the requested files.
#You may load a startup script that loads all the modules at startup #PerlRequire perl-scripts/script_to_load_at_startup.pl #mod_perl 1 <IfDefine !MODPERL2> PerlWarn On PerlFreshRestart On </IfDefine> #mod_perl 2 <IfDefine MODPERL2> #Some useful options PerlSwitches -w #mod_perl 2 #Monitor and reload all modules in %INC: #httpd.conf: PerlModule Apache2::Reload PerlInitHandler Apache2::Reload #Alternatively: Reload a specific set of modules only PerlModule Apache2::Reload PerlInitHandler Apache2::Reload PerlSetVar ReloadAll Off #Then any modules with the line: # use Apache2::Reload; #Will be reloaded when they change. #You can also sepcify the modules to be reloaded manually PerlSetVar ReloadModules "My::Foo My::Bar Foo::Bar::Test" PerlSetVar ReloadDirectories "/tmp/project1 /tmp/project2" #Note that ReloadModules and ReloadDirectories will narrow down the set #of modules to reload. #To monitor the reloading of modules use: PerlSetVar ReloadDebug On </IfDefine> #Preload Module PerlModule Konstrukt PerlModule Konstrukt::Handler::Apache #You may also assign the handler to *.html <Files *.ihtml> <IfDefine !MODPERL2> SetHandler perl-script </IfDefine> <IfDefine MODPERL2> SetHandler modperl </IfDefine> PerlHandler Konstrukt::Handler::Apache </Files> #Do not allow access to *.template, *.form and konstrukt.settings files #as they contain sensitive information <FilesMatch "(\.template|\.form|konstrukt\.settings)$"> Deny from All </FilesMatch>
Handles the request.
Filter a file before returning it to the web client.
Parameters:
Copyright 2006 Thomas Wittek (mail at gedankenkonstrukt dot de). All rights reserved.
This document is free software. It is distributed under the same terms as Perl itself.