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]

Reply via email to