stas        2004/07/04 18:40:00

  Modified:    src/docs/2.0/user/handlers protocols.pod
  Log:
  polish the newly added example
  
  Revision  Changes    Path
  1.27      +29 -20    modperl-docs/src/docs/2.0/user/handlers/protocols.pod
  
  Index: protocols.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/handlers/protocols.pod,v
  retrieving revision 1.26
  retrieving revision 1.27
  diff -u -u -r1.26 -r1.27
  --- protocols.pod     4 Jul 2004 08:35:23 -0000       1.26
  +++ protocols.pod     5 Jul 2004 01:39:59 -0000       1.27
  @@ -709,22 +709,26 @@
   directly accessing the client socket via the I<client_socket> method.
   The I<login> subroutine is called to check if access by this client
   should be allowed.  This routine makes up for what we lost with the
  -core HTTP protocol handler bypassed.  First we call the
  -C<Apache::RequestRec> I<new> method, which returns a I<request_rec>
  -object, just like that which is passed at request time to L<HTTP
  -protocol|docs::2.0::user::handlers::http> C<Perl*Handlers> and
  -returned by the subrequest API methods, I<lookup_uri> and
  -I<lookup_file>.  However, this "fake request" does not run handlers
  -for any of the phases, it simply returns an object which we can use to
  -do that ourselves.  The C<location_merge()> method is passed the
  -C<location> for this request, it will look up the
  -C<E<lt>LocationE<gt>> section that matches the given name and merge it
  -with the default server configuration.  For example, should we only
  -wish to allow access to this server from certain locations:
  +core HTTP protocol handler bypassed.
  +
  +First we call the C<Apache::RequestRec> C<new()> method, which returns
  +a I<request_rec> object, just like that, which is passed at request
  +time to L<HTTP protocol|docs::2.0::user::handlers::http>
  +C<Perl*Handlers> and returned by the subrequest API methods,
  +I<lookup_uri> and I<lookup_file>.  However, this "fake request" does
  +not run handlers for any of the phases, it simply returns an object
  +which we can use to do that ourselves.
  +
  +The C<location_merge()> method is passed the C<location> for this
  +request, it will look up the C<E<lt>LocationE<gt>> section that
  +matches the given name and merge it with the default server
  +configuration.  For example, should we only wish to allow access to
  +this server from certain locations:
   
     <Location MyApache::CommandServer>
  -      deny from all
  -      allow from 10.*
  +      Order Deny,Allow
  +      Deny from all
  +      Allow from 10.*
     </Location>
   
   The C<location_merge()> method only looks up and merges the
  @@ -742,9 +746,10 @@
   but would be true in the presence of a C<require> directive, such as:
   
     <Location MyApache::CommandServer>
  -      deny from all
  -      allow from 10.*
  -      require user dougm
  +      Order Deny,Allow
  +      Deny from all
  +      Allow from 10.*
  +      Require user dougm
     </Location>
   
   Given this configuration, C<some_auth_required()> will return true.
  @@ -779,12 +784,16 @@
         PerlProcessConnectionHandler MyApache::CommandServer
     
         <Location MyApache::CommandServer>
  -          allow from 127.0.0.1
  -          require user dougm
  -          satisfy any
  +          Order Deny,Allow
  +          Allow from 127.0.0.1
  +          Require user dougm
  +          Satisfy any
             AuthUserFile /tmp/basic-auth
         </Location>
     </VirtualHost>
  +
  +Since we are using C<mod_auth> directives here, you need to make sure
  +that it's available and loaded for this example to work as explained.
   
   The auth file can be created with the help of C<htpasswd> utility
   coming bundled with the Apache server. For example to create a file
  
  
  

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

Reply via email to