stas 2002/06/15 11:25:58
Modified: src/docs/2.0/user/config config.pod
Log:
work in progress on configuration issues
Revision Changes Path
1.16 +203 -11 modperl-docs/src/docs/2.0/user/config/config.pod
Index: config.pod
===================================================================
RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/config/config.pod,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- config.pod 4 Jun 2002 10:11:42 -0000 1.15
+++ config.pod 15 Jun 2002 18:25:58 -0000 1.16
@@ -2,10 +2,18 @@
mod_perl 2.0 Server Configuration
+
+
=head1 Description
This chapter provides an indepth mod_perl 2.0 configuration details.
+
+
+
+
+
+
=head1 mod_perl configuration directives
Similar to mod_perl 1.0, in order to use mod_perl 2.0 a few
@@ -13,6 +21,14 @@
quite similar to 1.0 settings but some directives were renamed and new
directives were added.
+
+
+
+
+
+
+
+
=head1 Enabling mod_perl
To enable mod_perl built as DSO add to I<httpd.conf>:
@@ -27,6 +43,11 @@
+
+
+
+
+
=head1 Perl's Command Line Switches
Now you can pass any Perl's command line switches in I<httpd.conf>
@@ -46,6 +67,13 @@
whereas C<-I> does not.
+
+
+
+
+
+
+
=head1 PerlOptions Directive
The directive C<PerlOptions> provides fine-grained configuration for
@@ -131,8 +159,13 @@
=head2 C<Perl*Handler>
-Disable C<Perl*Handlers>, all compiled in handlers are enabled by
-default.
+Disable C<Perl*Handler>s, all compiled-in handlers are enabled by
+default. The option name is derived from the C<Perl*Handler> name, by
+stripping the C<Perl> and C<Handler> parts of the word. So
+C<PerlLogHandler> becomes C<Log> which can be used to disable
+C<PerlLogHandler>:
+
+ PerlOptions -Log
Suppose one of the hosts does not want to allow users to configure
C<PerlAuthenHandler>, C<PerlAuthzHandler>, C<PerlAccessHandler> and
@@ -308,6 +341,14 @@
Notice that we have got the value of the environment variable I<TEST>.
+
+
+
+
+
+
+
+
=head1 Handlers Directives
META: need to add descriptions
@@ -375,6 +416,8 @@
+
+
=head1 Threads Mode Specific Directives
These directives are enabled only in a threaded mod_perl+Apache combo:
@@ -454,7 +497,145 @@
-=head1 Server Startup Define Option Retrieval
+
+
+
+
+
+
+=head1 mod_perl Directives Argument Types and Allowed Location
+
+The following table shows where in the configuration files mod_perl
+configuration directives are allowed to appear, what kind of and how
+many arguments they expect:
+
+General directives:
+
+ Directive Arguments SRV DIR
+ ---------------------------------------------------
+ PerlSwitches ITERATE V
+ PerlRequire ITERATE V
+ PerlModule ITERATE V
+ PerlOptions ITERATE V V
+ PerlSetVar TAKE2 V V
+ PerlAddVar ITERATE2 V V
+ PerlSetEnv TAKE2 V V
+ PerlPassEnv TAKE1 V
+ <Perl> Sections RAW_ARGS V
+ PerlTrace TAKE1 V
+
+Handler assignment directives:
+
+ Directive Arguments TYPE SRV DIR
+ ---------------------------------------------------------
+ PerlOpenLogsHandler ITERATE RUN_ALL V
+ PerlPostConfigHandler ITERATE RUN_ALL V
+ PerlChildInitHandler ITERATE VOID V
+
+ PerlPreConnectionHandler ITERATE RUN_ALL V
+ PerlProcessConnectionHandler ITERATE RUN_FIRST V
+
+ PerlPostReadRequestHandler ITERATE RUN_ALL V
+ PerlTransHandler ITERATE RUN_FIRST V
+ PerlInitHandler ITERATE RUN_ALL V V
+ PerlHeaderParserHandler ITERATE RUN_ALL V V
+ PerlAccessHandler ITERATE RUN_ALL V V
+ PerlAuthenHandler ITERATE RUN_FIRST V V
+ PerlAuthzHandler ITERATE RUN_FIRST V V
+ PerlTypeHandler ITERATE RUN_FIRST V V
+ PerlFixupHandler ITERATE RUN_ALL V V
+ PerlResponseHandler ITERATE RUN_FIRST V V
+ PerlLogHandler ITERATE RUN_ALL V V
+ PerlCleanupHandler ITERATE XXX V V
+
+ PerlInputFilterHandler ITERATE VOID V V
+ PerlOutputFilterHandler ITERATE VOID V V
+
+
+Perl Interpreter management directives:
+
+ Directive Arguments SRV DIR
+ ---------------------------------------------------
+ PerlInterpStart TAKE1 V
+ PerlInterpMax TAKE1 V
+ PerlInterpMinSpare TAKE1 V
+ PerlInterpMaxSpare TAKE1 V
+ PerlInterpMaxRequests TAKE1 V
+ PerlInterpScope TAKE1 V V
+
+mod_perl 1.0 back compatibility directives:
+
+ Directive Arguments SRV DIR
+ ---------------------------------------------------
+ PerlHandler ITERATE V V
+ PerlSendHeader FLAG V V
+ PerlSetupEnv FLAG V V
+ PerlTaintCheck FLAG V
+ PerlWarn FLAG V
+
+The I<Arguments> column represents the type of arguments directives
+accepts, where:
+
+=over
+
+=item ITERATE
+
+Expects a list of arguments.
+
+=item ITERATE2
+
+Expects one argument, followed by at least one or more arguments.
+
+=item TAKE1
+
+Expects one argument only.
+
+=item TAKE2
+
+Expects two arguments only.
+
+=item FLAG
+
+One of C<On> or C<Off> (case insensitive).
+
+=item RAW_ARGS
+
+The function parses the command line by itself.
+
+=back
+
+The second and the third column show the locations the directives are
+allowed to appear in:
+
+=over
+
+=item SRV
+
+Global configuration and C<E<lt>VirtualHostE<gt>> (mnemonic:
+I<SeRVer>). These directives are defined as C<RSRC_CONF> in the source
+code.
+
+=item DIR
+
+C<E<lt>DirectoryE<gt>>, C<E<lt>LocationE<gt>>, C<E<lt>FilesE<gt>> and
+all their regex variants (mnemonic: I<DIRectory>). These directives
+can also appear in I<.htaccess> files. These directives are defined
+as C<OR_ALL> in the source code.
+
+=back
+
+Apache specifies other allowed location types which are currently not
+used by the core mod_perl directives and their definition can be found
+in I<include/httpd_config.h> (hint: search for C<RSRC_CONF>).
+
+
+
+
+
+
+
+
+=head1 Server Startup Options Retrieval
Inside I<httpd.conf> one can do conditional configuration based on the
define options passed at the server startup. For example:
@@ -493,7 +674,14 @@
Apache::DB->init;
}
-=head2 MODPERL2 Define
+For example to check whether the server has been started in a single
+mode use:
+
+ if (Apache::exists_config_define("ONE_PROCESS")) {
+ print "Running in a single mode";
+ }
+
+=head2 MODPERL2 Define Option
When running under mod_perl 2.0 a special configuration define
C<MODPERL2> is enabled internally, as if the server had been started
@@ -516,15 +704,17 @@
}
-=head1 Retrieving Server Startup Options
-The httpd server startup options can be retrieved using
-C<Apache::exists_config_define()>. For example to check whether the
-server has been started in a single mode use:
- if (Apache::exists_config_define("ONE_PROCESS")) {
- print "Running in a single mode";
- }
+
+
+
+
+
+
+
+
+
@@ -553,6 +743,8 @@
When C<level> is not specified, the tracing level will be set to the
value of the MOD_PERL_TRACE environment variable.
+
+
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]