stas 2002/06/04 03:11:42
Modified: src/docs/2.0/user/config config.pod
Log:
documenting the added MODPERL2 define and extending on IfDefine in general
Revision Changes Path
1.15 +58 -0 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.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- config.pod 4 Jun 2002 10:01:49 -0000 1.14
+++ config.pod 4 Jun 2002 10:11:42 -0000 1.15
@@ -454,8 +454,66 @@
+=head1 Server Startup Define Option Retrieval
+Inside I<httpd.conf> one can do conditional configuration based on the
+define options passed at the server startup. For example:
+ <IfDefine PERLDB>
+ <Perl>
+ use Apache::DB ();
+ Apache::DB->init;
+ </Perl>
+
+ <Location />
+ PerlFixupHandler Apache::DB
+ </Location>
+ </IfDefine>
+
+So only when the server is started as:
+
+ % httpd C<-DPERLDB> ...
+
+The configuration inside C<IfDefine> will have an effect. If you want
+to have some configuration section to have an effect if a certain
+define wasn't defined use C<!>, for example here is the opposite of
+the previous example:
+
+ <IfDefine !PERLDB>
+ # ...
+ </IfDefine>
+
+If you need to access any of the startup defines in the Perl code you
+use C<Apache::exists_config_define>. For example in a startup file you
+can say:
+
+ use Apache::ServerUtil ();
+ if (Apache::exists_config_define("PERLDB")) {
+ require Apache::DB;
+ Apache::DB->init;
+ }
+
+=head2 MODPERL2 Define
+
+When running under mod_perl 2.0 a special configuration define
+C<MODPERL2> is enabled internally, as if the server had been started
+with C<-DMODPERL2>. For example this can be used to write a
+configuration file which needs to do something different whether it's
+running under mod_perl 1.0 or 2.0:
+
+ <IfDefine MODPERL2>
+ # 2.0 configuration
+ </IfDefine>
+ <IfDefine !MODPERL2>
+ # else
+ </IfDefine>
+
+From within Perl code this can be tested with
+C<Apache::exists_config_define()>, for example:
+
+ if (Apache::exists_config_define("MODPERL2")) {
+ # some 2.0 specific code
+ }
=head1 Retrieving Server Startup Options
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]