stas        02/04/03 01:16:09

  Modified:    src/docs/1.0/guide Changes.pod advocacy.pod browserbugs.pod
                        config.pod control.pod correct_headers.pod
                        databases.pod dbm.pod debug.pod help.pod
                        install.pod intro.pod modules.pod multiuser.pod
                        performance.pod perl.pod scenario.pod security.pod
                        snippets.pod start.pod strategy.pod
                        troubleshooting.pod
  Log:
  * guide::modules
  
    o extend on Apache::Filter(Per Einar Ellefsen)
  
  * guide::correct headers
  
    o rewrite the headers of this chapter (Per Einar Ellefsen)
  
  * guide::config
  
    o extended on method handlers (Per Einar Ellefsen)
  
  * guide::debug
  
    o extended on curinfo macro (Per Einar Ellefsen)
  
   * guide::
  
    o added descriptions to all chapters (Per Einar Ellefsen)
  
  Revision  Changes    Path
  1.5       +20 -0     modperl-docs/src/docs/1.0/guide/Changes.pod
  
  Index: Changes.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/Changes.pod,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- Changes.pod       26 Mar 2002 01:42:58 -0000      1.4
  +++ Changes.pod       3 Apr 2002 09:16:08 -0000       1.5
  @@ -11,6 +11,22 @@
   
   =head1 ??? ver 1.32
   
  +* guide::modules
  +
  +  o extend on Apache::Filter(Per Einar Ellefsen)
  +
  +* guide::correct headers
  +
  +  o rewrite the headers of this chapter (Per Einar Ellefsen)
  +
  +* guide::config
  +
  +  o extended on method handlers (Per Einar Ellefsen)
  +
  +* guide::debug
  +
  +  o extended on curinfo macro (Per Einar Ellefsen)
  +
   * guide::multiuser
   
     o chroot(1) info
  @@ -23,6 +39,8 @@
   
     o jail(8) urls (Andrew McNaughton)
   
  +  o link to the internal resources (Per Einar Ellefsen)
  +
   * guide::install
   
     o James G Smith has uploaded his Apache Builder to CPAN, update the
  @@ -47,6 +65,8 @@
       bigger collection of the documents, which need to be fully
       qualified, so each document can link to other documents in
       different projects/subprojects.
  +
  +  o added descriptions to all chapters (Per Einar Ellefsen)
   
   * Minor corrections:
   
  
  
  
  1.4       +13 -4     modperl-docs/src/docs/1.0/guide/advocacy.pod
  
  Index: advocacy.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/advocacy.pod,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- advocacy.pod      20 Mar 2002 17:43:03 -0000      1.3
  +++ advocacy.pod      3 Apr 2002 09:16:08 -0000       1.4
  @@ -4,13 +4,22 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  +Having a hard time getting mod_perl into your organization? We have
  +collected some arguments you can use to convince your boss why the
  +organization wants mod_perl.
  +
  +You can contact the L<mod_perl advocacy list|maillist::list-advocacy>
  +if you have any more questions, or good arguments you have used (any
  +success-stories are also welcome to L<the docs-dev
  +list|maillist::list-docs-dev>).
  +
  +Also see L<Popular Perl Complaints and Myths|faqs::perl_myth>.
   
   =head1 Thoughts about scalability and flexibility
   
  -Your need for scalability and flexibility depends on what you need from
  -your web site.  If you only want a simple guest book or database gateway
  -with no feature headroom, you can get away with any
  +Your need for scalability and flexibility depends on what you need
  +from your web site.  If you only want a simple guest book or database
  +gateway with no feature headroom, you can get away with any
   EASY_AND_FAST_TO_DEVELOP_TOOL (Exchange, MS IIS, Lotus Notes, etc).
   
   Experience shows that you will soon want more functionality, at which
  
  
  
  1.5       +3 -1      modperl-docs/src/docs/1.0/guide/browserbugs.pod
  
  Index: browserbugs.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/browserbugs.pod,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- browserbugs.pod   20 Mar 2002 17:43:03 -0000      1.4
  +++ browserbugs.pod   3 Apr 2002 09:16:08 -0000       1.5
  @@ -4,7 +4,9 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  +Unfortunately for web programmers, browser bugs are not uncommon, and
  +sometimes we have to deal with them; refer to this chapter for some
  +known bugs and how you can work around them.
   
   
   =head1 Preventing QUERY_STRING from getting corrupted because of &entity key 
names
  
  
  
  1.6       +70 -11    modperl-docs/src/docs/1.0/guide/config.pod
  
  Index: config.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/config.pod,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- config.pod        20 Mar 2002 17:43:03 -0000      1.5
  +++ config.pod        3 Apr 2002 09:16:08 -0000       1.6
  @@ -4,7 +4,9 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  +This section documents the various configuration options available for
  +Apache and mod_perl, as well as the Perl startup files, and more esoteric
  +possibilites such as configuring Apache with Perl.
   
   =head1 Server Configuration
   
  @@ -987,7 +989,7 @@
   If a C<Perl*Handler> is prototyped with C<$$>, this handler will be
   invoked as a method.  For example:
   
  -  package My;
  +  package MyClass;
     @ISA = qw(BaseClass);
      
     sub handler ($$) {
  @@ -1003,28 +1005,85 @@
     }
     
     1;
  -  __END__
   
   Configuration:
   
  - PerlHandler My
  +  PerlHandler MyClass
   
   or
   
  - PerlHandler My->handler
  +  PerlHandler MyClass->handler
   
   Since the handler is invoked as a method, it may inherit from other
   classes:
   
  - PerlHandler My->method
  +  PerlHandler MyClass->method
  +
  +In this case, the C<MyClass> class inherits this method from
  +C<BaseClass>. This means that any method of C<MyClass> or any of its
  +parent classes can serve as a mod_perl handler, and that you can apply
  +good OO methodology within your mod_perl handlers.
  +
  +For instance, you could have this base class:
  +
  +  package ServeContent;
  +  
  +  use Apache::Constants qw(OK);
  +  
  +  sub handler($$) {
  +     my($class, $r) = @_;
  +  
  +     $r->send_http_header('text/plain');
  +     $r->print($class->get_content());
  +  
  +     return OK;
  +  }
  +  
  +  sub get_content {
  +     return 'Hello World';
  +  }
  +  
  +  1;
  +
  +And then use the same base class for different contents:
   
  -META: requires more explanation!
  +  package HelloWorld;
  +  
  +  use ServeContent;
  +  @ISA = qw(ServeContent);
  +  
  +  sub get_content {
  +     return 'Hello, happy world!';
  +  }
  +  
  +  package GoodbyeWorld;
  +  
  +  use ServeContent;
  +  @ISA = qw(ServeContent);
  +  
  +  sub get_content {
  +     return 'Goodbye, cruel world!';
  +  }
  +  
  +  1;
  +
  +Now you can keep the same handler subroutine for a group of modules
  +which are similiar. The following configuration will enable the
  +handlers from the subclasses:
   
  -In this case, the C<My> class inherits this method from C<BaseClass>.
  +  <Location /hello>
  +      SetHandler perl-script
  +      PerlHandler HelloWorld->handler
  +  </Location>
  +
  +  <Location /bye>
  +      SetHandler perl-script
  +      PerlHandler GoodbyeWorld->handler
  +  </Location>
   
   To build in this feature, configure with:
   
  - % perl Makefile.PL PERL_METHOD_HANDLERS=1 [ ... ]
  +  % perl Makefile.PL PERL_METHOD_HANDLERS=1 [ ... ]
   
   =head2 PerlFreshRestart
   
  @@ -1649,9 +1708,9 @@
   =head2 References
   
   For more info see
  -http://www.modperl.com Chapter 8
  +I<Writing Apache Modules with Perl and C>, Chapter 8:
  +http://modperl.com:9000/book/chapters/ch8.html
   
  -META: a direct link?
   
   =head1 Validating the Configuration Syntax
   
  
  
  
  1.7       +3 -1      modperl-docs/src/docs/1.0/guide/control.pod
  
  Index: control.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/control.pod,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- control.pod       20 Mar 2002 17:43:03 -0000      1.6
  +++ control.pod       3 Apr 2002 09:16:08 -0000       1.7
  @@ -4,7 +4,9 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  +Covers techniques to restart mod_perl enabled Apache, SUID scripts,
  +monitoring, and other maintenance chores, as well as some specific
  +setups.
   
   =head1 Restarting Techniques
   
  
  
  
  1.5       +26 -29    modperl-docs/src/docs/1.0/guide/correct_headers.pod
  
  Index: correct_headers.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/correct_headers.pod,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- correct_headers.pod       20 Mar 2002 17:43:03 -0000      1.4
  +++ correct_headers.pod       3 Apr 2002 09:16:08 -0000       1.5
  @@ -4,9 +4,10 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  -
  -
  +To make caching of dynamic documents possible, which can give you a
  +considerable performance gain, setting a number of HTTP headers is of
  +a vital importance. This document explains which headers you need to
  +pay attention to, and how to work with them.
   
   =head1 SYNOPSIS
   
  @@ -17,17 +18,15 @@
   
   This chapter has been contributed to the Guide by Andreas Koenig.  You
   will find the references and other related info at the bottom of this
  -page.  I'll try to keep it up to date with the Master version which
  -resides on CPAN.  If in doubt -- always check the CPAN for
  -C<Apache::correct_headers>.
  +page. It was previously distributed from CPAN, but this Guide is now its
  +official resting-place.
   
   If you have any questions regarding this specific document only,
   please refer to Andreas, since he is the guru on this subject.  On any
   other matter please contact the mod_perl mailing list.
   
  -=head1 DESCRIPTION
   
  -=head1 1) Why Headers
  +=head1 Why Headers
   
   Dynamic Content is dynamic, after all, so why would anybody care about
   HTTP headers?  Header composition is a task often neglected in the CGI
  @@ -49,7 +48,7 @@
   L<[1]|guide::correct_headers/_1_>), you will have a strong motivation to
   cooperate with it.  This document may help you to do it correctly.
   
  -=head1 2) Which Headers
  +=head1 Which Headers
   
   The HTTP standard (v 1.1 is specified in L<[3]|guide::correct_headers/_3_>, v
   1.0 in L<[2]|guide::correct_headers/_2_>) describes lots of headers.  In this
  @@ -59,9 +58,9 @@
   I have grouped the headers into three groups: date headers,
   content headers, and the special Vary header.
   
  -=head2 2.1) Date Related Headers
  +=head2 Date Related Headers
   
  -=head2 2.1.1) Date
  +=head3 Date
   
   Section 14.18 of the HTTP standard deals with the circumstances under
   which you must or must not send a C<Date> header.  For almost
  @@ -74,7 +73,7 @@
   C<$r-E<gt>request_time>.  A mod_perl script can read, but not change,
   C<$r-E<gt>request_time>.
   
  -=head2 2.1.2) Last-Modified
  +=head3 Last-Modified
   
   Section 14.29 of the HTTP standard deals with this.  The
   C<Last-Modified> header is mostly used as a so-called weak
  @@ -124,10 +123,10 @@
     use Date::Parse;
     # Date::Parse parses RCS format, Apache::Util::parsedate doesn't
     $Mtime ||=
  -    Date::Parse::str2time(substr q$Date: 2002/03/20 17:43:03 $, 6);
  +    Date::Parse::str2time(substr q$Date: 2002/04/03 09:16:08 $, 6);
     $r->set_last_modified($Mtime);
   
  -=head2 2.1.3) Expires and Cache-Control
  +=head3 Expires and Cache-Control
   
   Section 14.21 of the HTTP standard deals with the C<Expires>
   header.  The purpose of the C<Expires> header is to determine a point
  @@ -205,9 +204,9 @@
   problem that remains is that there are broken browsers which ignore
   C<Expires> headers.
   
  -=head2 2.2) Content Related Headers
  +=head2 Content Related Headers
   
  -=head2 2.2.1) Content-Type
  +=head3 Content-Type
   
   You are most probably familiar with C<Content-Type>.  Sections 3.7,
   7.2.1 and 14.17 of the HTTP specs cover the details.  mod_perl has the
  @@ -220,7 +219,7 @@
   is specified in the relevant C<DefaultType> configuration directive or
   C<text/plain> if none is active.
   
  -=head2 2.2.2) Content-Length
  +=head3 Content-Length
   
   According to section 14.13 of the HTTP specifications, the
   C<Content-Length> header is the number of octets in the body of a
  @@ -253,7 +252,7 @@
   So be careful never to send a wrong C<Content-Length>, either in a
   GET or in a HEAD request.
   
  -=head2 2.2.3) Entity Tags
  +=head3 Entity Tags
   
   An C<Entity Tag> is a validator which can be used instead of, or in
   addition to, the C<Last-Modified> header.  An entity tag is a quoted
  @@ -344,7 +343,7 @@
   tag, thus giving caches a chance to transfer the document in chunks.
   (Anybody in the mood to add a chapter about ranges to this document?)
   
  -=head2 2.3) Content Negotiation
  +=head2 Content Negotiation
   
   Content negotiation is a particularly wonderful feature that was
   introduced with HTTP 1.1.  Unfortunately it is not yet widely
  @@ -367,7 +366,7 @@
     outside the request-header fields or within extension header fields
     not defined by this specification.
   
  -=head2 2.3.1) Vary
  +=head3 Vary
   
   In order to signal to the recipient that content negotiation has been
   used to determine the best available representation for a given
  @@ -389,12 +388,12 @@
   workaround, you won't enjoy your Squid accelerator for these documents
   :-(
   
  -=head1 3) Requests
  +=head1 Requests
   
   Section 13.11 of the specifications states that the only two cacheable
   methods are C<GET> and C<HEAD>.
   
  -=head2 3.1) HEAD
  +=head2 HEAD
   
   Among the above recommended headers, the date-related ones (C<Date>,
   C<Last-Modified>, and C<Expires>/C<Cache-Control>) are usually easy to
  @@ -421,7 +420,7 @@
   whole C<HEAD> request for you, but under some circumstances it may not
   be allowed to do so.
   
  -=head2 3.2) POST
  +=head2 POST
   
   The response to a C<POST> request is not cacheable due to an
   underspecification in the HTTP standards.  Section 13.4 does not forbid
  @@ -439,7 +438,7 @@
   If you have long C<POST> requests, Squid doesn't buy you anything.  So
   always consider using a C<GET> instead of a C<POST> if possible.
   
  -=head2 3.3) GET
  +=head2 GET
   
   A normal C<GET> is what we usually write our mod_perl programs for.
   Nothing special about it.  We send our headers followed by the body.
  @@ -509,7 +508,7 @@
   
     http://example.com/query;BGCOLOR=blue;FGCOLOR=red;FONT=/font/bla
   
  -=head2 3.4) Conditional GET
  +=head2 Conditional GET
   
   A rather challenging request mod_perl programmers can get is the
   conditional C<GET>, which typically means a request with an
  @@ -548,7 +547,7 @@
   handle conditional C<GET>s as well even if a Squid accelerator is
   running.
   
  -=head1 4.) Avoiding Dealing with Headers
  +=head1 Avoiding Dealing with Headers
   
   There is another approach to dynamic content that is possible with
   mod_perl.  This approach is appropriate if the content changes
  @@ -621,8 +620,6 @@
   Web Caching and Content Delivery Resources
   http://www.web-caching.com/
   
  -=item *
  -
   =back
   
   =head1 Maintainers
  @@ -645,7 +642,7 @@
   
   =item *
   
  -Stas Bekman E<lt>stas (at) stason.orgE<gt>
  +Andreas Koenig E<lt>andreas.koenig (at) anima.deE<gt>
   
   =back
   
  
  
  
  1.6       +4 -2      modperl-docs/src/docs/1.0/guide/databases.pod
  
  Index: databases.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/databases.pod,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- databases.pod     20 Mar 2002 18:15:36 -0000      1.5
  +++ databases.pod     3 Apr 2002 09:16:08 -0000       1.6
  @@ -4,8 +4,10 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  -
  +Creating dynamic websites with mod_perl often involves using
  +relational databases. C<Apache::DBI>, which provides a database
  +connections persistence which boosts the mod_perl performance, is
  +explained in this chapter.
   
   =head1 Why Relational (SQL) Databases
   
  
  
  
  1.7       +3 -2      modperl-docs/src/docs/1.0/guide/dbm.pod
  
  Index: dbm.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/dbm.pod,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- dbm.pod   20 Mar 2002 18:15:36 -0000      1.6
  +++ dbm.pod   3 Apr 2002 09:16:08 -0000       1.7
  @@ -4,8 +4,9 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  -
  +Small databases can be implemented pretty efficiently using dbm files,
  +but there are still some precautions that must be taken to use
  +properly under mod_perl.
   
   =head1 Where and Why to use dbm files
   
  
  
  
  1.6       +16 -4     modperl-docs/src/docs/1.0/guide/debug.pod
  
  Index: debug.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/debug.pod,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- debug.pod 20 Mar 2002 17:43:03 -0000      1.5
  +++ debug.pod 3 Apr 2002 09:16:08 -0000       1.6
  @@ -4,7 +4,8 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  +Tired of Internal Server Errors? Find out how to debug your mod_perl
  +applications, thanks to a number of features of Perl and mod_perl.
   
   
   =head1 Warning and Errors Explained
  @@ -3411,8 +3412,19 @@
   in the C<while(1)> loop isn't aborted by Apache.  The next section
   covers this.
   
  -META: add the note about using the 'curinfo' gdb macro to perform an
  -easy detecting of the hanging location.
  +To easily detect the hanging location, you can go through these steps
  +while running gdb:
  +
  + (gdb) where
  + (gdb) source ~/.gdbinit
  + (gdb) curinfo
  +
  +(adjust the path to I<.gdbinit> if needed.)
  +
  +After loading the special macros file (I<.gdbinit>) you can use the
  +I<curinfo> gdb macro to figure out the file and line number the code
  +stuck in.
  +
   
   =head1 Debugging Hanging processes (continued)
   
  @@ -3664,7 +3676,7 @@
   
   =head1 Code Profiling
   
  -(Meta: duplication??? I've started to write about profiling somewhere
  +(META: duplication??? I've started to write about profiling somewhere
   in this file)
   
   It is possible to profile code run under mod_perl with the
  
  
  
  1.10      +30 -89    modperl-docs/src/docs/1.0/guide/help.pod
  
  Index: help.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/help.pod,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- help.pod  25 Mar 2002 15:50:14 -0000      1.9
  +++ help.pod  3 Apr 2002 09:16:08 -0000       1.10
  @@ -4,7 +4,9 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  +If your question isn't answered by reading this guide, check this section
  +for information on how to get help on mod_perl, Apache, or other topics
  +discussed here.
   
   
   =head1 READ ME FIRST
  @@ -22,7 +24,7 @@
   help and you should I<RTFM> before you call for I<HELP>.  (Remember the
   fable of the shepherd boy and the wolves).
   
  -For more information See L<Get helped with 
mod_perl|guide::help/Get_help_with_mod_perl>.
  +For more information See L<Get help with 
mod_perl|guide::help/Get_help_with_mod_perl>.
   
   =head1 Contacting me
   
  @@ -34,7 +36,7 @@
   
   However, you are welcome to submit corrections and suggestions
   directly to me at
  [EMAIL PROTECTED]  If you are
  +stas (at) stason.org?subject=mod_perl%20guide%20corrections.  If you are
   going to submit heavy corrections of the text (I love those!), please
   help me by downloading the source pages in POD from
   http://www.stason.org/guide-snapshots/, directly editing them and
  @@ -43,8 +45,9 @@
   
   I<PLEASE DO NOT SEND QUESTIONS DIRECTLY TO ME, I didn't invite those
   by writing the guide.  They will all be immediately deleted.  Please
  -ask questions on the mod_perl list and if we can answer your question,
  -one (or more) of us will answer it on the list.  Thank you!>
  +ask questions on the L<mod_perl list|maillist::list-users> and if we can
  +answer your question, one (or more) of us will answer it on the list.
  +Thank you!>
   
   =head2 How to Report Problems
   
  @@ -221,7 +224,7 @@
     Price: $39.99
     Pages: 600
   
  -=item * Managing and Programming mod_perl
  +=item * Practical mod_perl
   
   http://www.modperlbook.com is the home site of the new mod_perl book,
   that Eric Cholet and Stas Bekman are co-authoring.  We expect
  @@ -285,125 +288,62 @@
   
   =item * mod_perl mailing lists
   
  -=over
  -
  -=item * The mod_perl mailing list
  -
  -The Apache/Perl mailing list I<is available for mod_perl users and
  -developers to share ideas, solve problems and discuss things related
  -to mod_perl and the Apache::* modules.> To subscribe to this list,
  -send email to [EMAIL PROTECTED] .  To unsubscribe send
  -email to [EMAIL PROTECTED] .
  -
  -To subscribe to the digest list send email to
  [EMAIL PROTECTED] .
  -
  -Searchable mailing list archives are available:
  +META: shouldn't we just link directly to the mailing list page? (once
  +linking to a section works).
   
   =over
   
   =item *
   
  -http://mathforum.org/epigone/modperl
  -
  -=item *
  +L<The mod_perl mailing list|maillist::list-users>
   
  -http://www.geocrawler.com/lists/3/web/182/0/
  -
  -=item *
  -
  -http://www.mail-archive.com/modperl%40apache.org/
  -
  -=item *
  -
  -http://www.davin.ottawa.on.ca/archive/modperl/
  +The Apache/Perl mailing list I<is available for mod_perl users and
  +developers to share ideas, solve problems and discuss things related
  +to mod_perl and the Apache::* modules.>
   
  -=item *
  +See the L<mailing list's info page|maillist::list-users> for more info.
   
  -http://marc.theaimsgroup.com/?l=apache-modperl
   
   =item *
   
  -http://www.egroups.com/group/modperl/
  -
  -=back
  -
  -=item * The mod_perl development mailing list
  +L<The mod_perl development mailing list|maillist::list-dev>
   
   This list is for discussions about the development of the core
   mod_perl.
   
  -Subscription information.
  -
  -To subscribe to this list send an empty email to
  [EMAIL PROTECTED]  To unsubscribe from the list send an
  -empty email to [EMAIL PROTECTED]  To get help with the
  -list send an empty email to [EMAIL PROTECTED]
  -
  -List's searchable archives:
  -
  -=over
  -
  -=item *
  -
  -http://marc.theaimsgroup.com/?l=apache-modperl-dev&r=1&w=2#apache-modperl-dev
   
   =item *
   
  -http://www.mail-archive.com/dev%40perl.apache.org/
  -
  -=back
  -
  -=item * The mod_perl documentation mailing list
  +L<The mod_perl documentation mailing list|maillist::list-docs-dev>
   
  -This mailing list is for discussing mod_perl documentation.
  +This mailing list is for discussing mod_perl documentation, and is the one
  +you should contact with issues related to this Guide or other
  +documentation on this website.
   
  -Subscription information
  -
  -  Subscribe to the list: [EMAIL PROTECTED]
  -  Unsubscribe from the list: [EMAIL PROTECTED]
  -  Get help with the list: [EMAIL PROTECTED]
  +=item *
   
  -=item * The Apache test framework development mailing list
  +L<The Apache test framework development mailing
  +list|maillist::list-test-dev>
   
   The test-dev list is the list where Apache HTTP Test project is
   discussed.
   
  -Subscription information:
  -
  -  Subscribe to the list: [EMAIL PROTECTED]
  -  Unsubscribe from the list: [EMAIL PROTECTED]
  -  Get help with the list: [EMAIL PROTECTED]
  -
  -List's searchable archive:
  -
  -http://www.apachelabs.org/test-dev/
  +=item *
   
  -=item * The advocacy mailing list
  +L<The advocacy mailing list|maillist::list-advocacy>
   
   The list for mod_perl advocacy issues, discussions about
   sites, etc.
   
  -Subscribe by sending a mail to [EMAIL PROTECTED]
  -Unsubscribe by sending a mail to [EMAIL PROTECTED]
  -Use advocacy@perl.apache.org to post to the list.
  -
  -The archive: http://www.mail-archive.com/advocacy@perl.apache.org/.
  +=item *
   
  -=item * The modperl-cvs mailing list
  +L<The modperl-cvs mailing list|maillist::list-cvs>
   
   The modperl developers list is the list where you can watch mod_perl
   getting patched.  No real discussions happen on this list, but if you
   want to know about the latest changes in the mod_perl core before
   everyone else, this is a list to be on.
   
  -To subscribe to this list, send email to
  [EMAIL PROTECTED] .  To unsubscribe send email to
  [EMAIL PROTECTED] .  Send email to
  [EMAIL PROTECTED] to post to the list.
  -
  -No archives available.
  -
   =back
   
   =back
  @@ -451,6 +391,7 @@
   
   I<Advanced Perl Programming> By Sriram Srinivasan. Published by
   O'Reilly & Associates. ISBN: 1-56592-220-4. Chapters 18-20.
  +http://www.oreilly.com/catalog/advperl/
   
   perl-xs mailing list on perl.org (mail [EMAIL PROTECTED])
   
  @@ -511,7 +452,7 @@
   
   =item * Idiot's Guide to CGI programming
   
  -http://www.perl.com/CPAN/doc/FAQs/cgi/idiots-guide.html
  +http://www.webdeveloper.com/cgi-perl/cgi_idiots_guide_to_perl.html
   
   =item * WWW Security FAQ
   
  
  
  
  1.8       +4 -1      modperl-docs/src/docs/1.0/guide/install.pod
  
  Index: install.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/install.pod,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- install.pod       26 Mar 2002 01:42:58 -0000      1.7
  +++ install.pod       3 Apr 2002 09:16:08 -0000       1.8
  @@ -4,7 +4,10 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  +An in-depth explanation of the mod_perl installation process, from the
  +basic installation in 10 steps, to more complex one with all the
  +possible options you might want to use, including DSO build. It
  +includes troubleshooting tips too.
   
   
   =head1 A Summary of a Basic mod_perl Installation
  
  
  
  1.7       +3 -1      modperl-docs/src/docs/1.0/guide/intro.pod
  
  Index: intro.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/intro.pod,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- intro.pod 25 Mar 2002 03:39:00 -0000      1.6
  +++ intro.pod 3 Apr 2002 09:16:08 -0000       1.7
  @@ -4,7 +4,9 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  +An introduction to what mod_perl is all about, its different features,
  +and some explanations of C<Apache::Registry>, C<Apache::PerlRun> and
  +the Apache/Perl API.
   
   
   =head1 What is mod_perl
  
  
  
  1.5       +82 -6     modperl-docs/src/docs/1.0/guide/modules.pod
  
  Index: modules.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/modules.pod,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- modules.pod       20 Mar 2002 17:43:04 -0000      1.4
  +++ modules.pod       3 Apr 2002 09:16:08 -0000       1.5
  @@ -4,7 +4,35 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  +Overview of some of the most popular modules for mod_perl, both to use
  +directly from your code and as mod_perl handlers.
  +
  +Over the time, mod_perl has collected an impressive amount of modules
  +which are distributed in the standard Perl way, over CPAN. Found in
  +the C<Apache::> namespace, these implement various functionalities you
  +might need when creating a mod_perl-based website. For mod_perl, we
  +can actually make a distinction between two types of modules:
  +
  +=over
  +
  +=item *
  +
  +Apache handlers, which handle request phases or whole requests and are
  +standalone (C<Apache::GTopLimit> for example).
  +
  +=item *
  +
  +Convenience modules, which are like standard Perl modules,
  +implementing some useful aspect of web programming, usually using
  +mod_perl API for a greater performance or functionality unavailable in
  +plain Perl. (A good example of this is C<Apache::Session>.) These
  +modules exist under the C<Apache::> namespace because they can only be
  +used under mod_perl.
  +
  +=back
  +
  +For a complete list of modules, see the L<Apache/Perl Module
  +list|products::apache-modlist>.
   
   
   =head1 Apache::Session - Maintain session state across HTTP requests
  @@ -233,7 +261,7 @@
   =head1 Apache::PerlRun - Run unaltered CGI scripts under mod_perl
   
   See L<Apache::PerlRun - a closer
  -look|guide::porting/Apache_PerlRun_a_closer_look>.
  +look|guide::porting/Apache__PerlRun__a_closer_look>.
   
   =head1 Apache::RegistryNG -- Apache::Registry New Generation
   
  @@ -318,13 +346,61 @@
   It's really a regular C<Apache::Registry> setup, except for the added
   modules in the PerlHandler line.
   
  
-(L<Apache::GzipChain|guide::modules/Apache__GzipChain___compress_HTML__or_anything__in_the_OutputChain>
 allows to
  -compress the output on the fly.)
  
+(L<Apache::GzipChain|guide::modules/Apache__GzipChain___compress_HTML__or_anything__in_the_OutputChain>
  +allows to compress the output on the fly.)
   
   =head1 Apache::Filter - Alter the output of previous handlers
   
  -META: to be written (actually summarized the info from Apache::Filter
  -manpage)
  +C<Apache::Filter>, like C<Apache::OutputChain>, allows you to chain
  +stacked handlers. It's not very different from C<Apache::OutputChain>,
  +except for the way you configure the filters. A normal configuration
  +with C<Apache::Filter> would be the following:
  +
  +  PerlModule Apache::Filter Apache::RegistryFilter Apache::SSI Apache::Gzip
  +  Alias /perl /home/httpd/perl
  +  <Location /perl>
  +     SetHandler "perl-script"
  +     Options +ExecCGI
  +     PerlSetVar Filter On
  +     PerlHandler Apache::RegistryFilter Apache::SSI Apache::Gzip
  +  </Location>
  +
  +This accomplishes some things many CGI programmers want: you can
  +output SSI code from your C<Apache::Registry> scripts, have it parsed
  +by C<Apache::SSI>, and then compressed with C<Apache::Gzip> (see
  
+L<Apache::Gzip|guide::modules/Apache__Gzip___Auto_compress_web_files_with_Gzip>
  +below).
  +
  +Thanks to C<Apache::Filter>, you can also write your own filter
  +modules, which allow you to read in the output from the previous
  +handler in the chain and modify it. You would do something like this
  +in your C<handler> subroutine:
  +
  +  $r = $r->filter_register();  # Required
  +  my $fh = $r->filter_input(); # Optional (you might not need the input FH)
  +  while (<$fh>) {
  +      s/ something / something else /;
  +      print;
  +  }
  +
  +Another interesting thing to do with C<Apache::Filter> would be to use
  +it for XML output from your scripts(these modules are hypothetical,
  +this is handled much better by AxKit, Matt Seargeant's XML application
  +server for mod_perl (see http://www.axkit.org/ ).
  +
  +  <Location /perl/xml-output>
  +     SetHandler perl-script
  +     Options +ExecCGI
  +     PerlSetVar Filter On
  +     PerlHandler Apache::RegistryFilter Apache::XSLT
  +  </Location>
  +
  +As you can see, you can get a lot of freedom by using stacked
  +handlers, allowing you to separate various parts of your programs and
  +leave those tasks up to other modules, which may already be available
  +from CPAN (this is much better than the CGI time when your script
  +would have to do I<everything> itself, because you couldn't do much
  +with its output).
   
   =head1 Apache::GzipChain - compress HTML (or anything) in the OutputChain
   
  
  
  
  1.7       +9 -1      modperl-docs/src/docs/1.0/guide/multiuser.pod
  
  Index: multiuser.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/multiuser.pod,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- multiuser.pod     25 Mar 2002 15:41:50 -0000      1.6
  +++ multiuser.pod     3 Apr 2002 09:16:08 -0000       1.7
  @@ -4,7 +4,15 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  +mod_perl hosting by ISPs: fantasy or reality? This section covers some
  +topics that might be of interest to users looking for ISPs to host
  +their mod_perl-based website, and ISPs looking for a way to provide
  +such services.
  +
  +Today, it is a reality: there are a number of ISPs hosting mod_perl,
  +although the number of these is not as big as we would have liked it
  +to be. To see a list of ISPs that can provide mod_perl hosting, see
  +L<ISPs supporting mod_perl|support::isps>.
   
   
   =head1 ISPs providing mod_perl services - a fantasy or a reality
  
  
  
  1.7       +3 -2      modperl-docs/src/docs/1.0/guide/performance.pod
  
  Index: performance.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/performance.pod,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- performance.pod   21 Mar 2002 10:16:35 -0000      1.6
  +++ performance.pod   3 Apr 2002 09:16:08 -0000       1.7
  @@ -4,8 +4,9 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  -
  +An exhaustive list of various techniques you might want to use to get
  +the most performance possible out of your mod_perl server:
  +configuration, coding, memory use and more.
   
   =head1 The Big Picture
   
  
  
  
  1.4       +4 -0      modperl-docs/src/docs/1.0/guide/perl.pod
  
  Index: perl.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/perl.pod,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- perl.pod  20 Mar 2002 17:43:04 -0000      1.3
  +++ perl.pod  3 Apr 2002 09:16:08 -0000       1.4
  @@ -2592,6 +2592,10 @@
   
   Stas Bekman E<lt>stas (at) stason.orgE<gt>
   
  +=item *
  +
  +Matt Sergeant E<lt>matt (at) sergeant.orgE<gt>
  +
   =back
   
   Only the major authors are listed above. For contributors see the
  
  
  
  1.6       +2 -2      modperl-docs/src/docs/1.0/guide/scenario.pod
  
  Index: scenario.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/scenario.pod,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- scenario.pod      20 Mar 2002 17:43:04 -0000      1.5
  +++ scenario.pod      3 Apr 2002 09:16:08 -0000       1.6
  @@ -4,8 +4,8 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  -
  +This chapter provides step by step installation guide for the various
  +setups discussed in L<Choosing the Right Strategy|guide::strategy>.
   
   =head1 Assumptions 
   
  
  
  
  1.4       +4 -1      modperl-docs/src/docs/1.0/guide/security.pod
  
  Index: security.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/security.pod,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- security.pod      20 Mar 2002 17:43:04 -0000      1.3
  +++ security.pod      3 Apr 2002 09:16:08 -0000       1.4
  @@ -4,7 +4,10 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  +Securing your site should be your first priority, because of the
  +consequences a break-in might have. We discuss the various
  +authentication and authorization techniques available, a very
  +interesting use of mod_perl.
   
   
   =head1 The Importance of Your site's Security
  
  
  
  1.6       +2 -2      modperl-docs/src/docs/1.0/guide/snippets.pod
  
  Index: snippets.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/snippets.pod,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- snippets.pod      20 Mar 2002 18:15:36 -0000      1.5
  +++ snippets.pod      3 Apr 2002 09:16:08 -0000       1.6
  @@ -4,8 +4,8 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  -
  +A collection of mod_perl code snippets which you can either adapt to
  +your own use or integrate directly into your own code.
   
   =head1 Redirecting Errors to the Client Instead of error_log
   
  
  
  
  1.5       +3 -1      modperl-docs/src/docs/1.0/guide/start.pod
  
  Index: start.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/start.pod,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- start.pod 20 Mar 2002 17:43:05 -0000      1.4
  +++ start.pod 3 Apr 2002 09:16:08 -0000       1.5
  @@ -4,7 +4,9 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  +The overview of the different parts of the guide, giving you an idea
  +of what you should read, and in which order. Provides a good summary
  +of all the documentation.
   
   
   =head1 What's inside?
  
  
  
  1.4       +10 -6     modperl-docs/src/docs/1.0/guide/strategy.pod
  
  Index: strategy.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/strategy.pod,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- strategy.pod      20 Mar 2002 17:43:05 -0000      1.3
  +++ strategy.pod      3 Apr 2002 09:16:08 -0000       1.4
  @@ -4,8 +4,8 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  -
  +This document discusses various mod_perl setup strategies used to get
  +the best performance and scalability of the services.
   
   =head1 Do it like I do it!?
   
  @@ -648,14 +648,18 @@
   
   =item *
   
  -Memory usage. Squid uses quite a bit of memory.
  -
  -META: more details?
  +Memory usage. Squid uses quite a bit of memory. In fact, it caches a good
  +part of its content in memory, to be able to serve it directly from RAM,
  +a technique which is a lot quicker than serving from disk. However, as you
  +already have your mod_perl server caching its code in RAM, you might not
  +want another RAM-hogging beast taking up your precious memory (see the
  +Squid FAQ for reference: http://www.squid-cache.org/Doc/FAQ/FAQ-8.html ).
   
   =item *
   
   HTTP protocol level. Squid is pretty much a C<HTTP/1.0> server, which
  -seriously limits the deployment of C<HTTP/1.1> features.
  +seriously limits the deployment of C<HTTP/1.1> features, such as
  +C<Keep-Alive> requests.
   
   =item *
   
  
  
  
  1.6       +3 -2      modperl-docs/src/docs/1.0/guide/troubleshooting.pod
  
  Index: troubleshooting.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/1.0/guide/troubleshooting.pod,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- troubleshooting.pod       20 Mar 2002 17:43:05 -0000      1.5
  +++ troubleshooting.pod       3 Apr 2002 09:16:08 -0000       1.6
  @@ -4,8 +4,9 @@
   
   =head1 Description
   
  -FIXME: DESCRIPTION
  -
  +If you encounter an error or warning you don't understand, check this
  +chapter for solutions to common warnings and errors that the mod_perl
  +community has encountered in the last few years.
   
   =head1 General Advice
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to