You are viewing a plain text version of this content. The canonical link for it is here.
Posted to apache-bugdb@apache.org by Dean Gaudet <dg...@arctic.org> on 1997/08/17 00:20:02 UTC

Re: documentation/586: Clarity on usage (fwd)

The following reply was made to PR documentation/586; it has been noted by GNATS.

From: Dean Gaudet <dg...@arctic.org>
To: new-httpd@apache.org
Subject: Re: documentation/586: Clarity on <Location> usage (fwd)
Date: Sat, 16 Aug 1997 15:15:38 -0700 (PDT)

 
 Ok here's more docs.  Someone feel free to merge it in with the real docs.
 
 Everything that is syntactically allowed in <Directory> is also allowed in
 <Location> (except a sub-<Files> section, but the code doesn't test for
 that, Lars has an open bug report on that).  Semantically however some
 things, and the most notable is AllowOverrides, make no sense in
 <Location>.  The same for <Files> -- syntactically everything is fine, but
 semantically some things are different. 
 
 The order of merging is:
 
 <Directory> and .htaccess done simultaneously (.htaccess overrides <Dir>)
 <DirectoryMatch>
 <Files> and <FilesMatch> done simultaneously
 <Location> and <LocationMatch> done simultaneously
 
 Each group is processed in the order that they appear in the configuration
 files.  Note that using access.conf and srm.conf confuses things.  Combining
 those with virtual hosts is even more confusing.  Note that a virtual host's
 directives are processed AFTER all of the main host's directives (this is true
 as of 1.2.2 and 1.3a2, prior to that it was backwards/broken).
 
 Modifying .htaccess parsing during Location doesn't do anything because
 .htaccess parsing has already occured.
 
 The general guidelines are:
 
     If you are attempting to match objects at the filesystem level then
     you must use <Directory> and/or <Files>.
 
     If you are attempting to match objects at the URL level then you must
     use <Location>
 
 a notable exception is:
 
     proxy control is done via <Directory>.  This is a legacy mistake because
     the proxy existed prior to <Location>.  A future version of the config
     language should probably switch this to <Location>.
 
 Another note:
 
     There is actually a <Location>/<LocationMatch> sequence performed
     just before the name translation phase (where Aliases and DocumentRoots
     are used to map URLs to filenames).  The results of this sequence
     are completely thrown away after the translation has completed.
 
 I think I did tweak the documentation for this ... but maybe I just planned
 on tweaking but never got around to it.
 
 The user's example below looks like it is supposed to be a <Directory>.
 
 Dean
 
 On Sat, 16 Aug 1997, Marc Slemko wrote: 
 
 > This is related to something Dean said the other day.  Is currently
 > in feedback state...
 > 
 > Dean, you probably understand this best?
 > 
 > ---------- Forwarded message ----------
 > Date: Thu, 15 May 1997 14:00:02 -0700 (PDT)
 > From: Daniel Rinehart <da...@ccs.neu.edu>
 > To: apache-bugdb@apache.org
 > Cc: apache-bugdb@apache.org
 > Subject: documentation/586: Clarity on <Location> usage
 > 
 > 
 > >Number:         586
 > >Category:       documentation
 > >Synopsis:       Clarity on <Location> usage
 > >Confidential:   no
 > >Severity:       non-critical
 > >Priority:       medium
 > >Responsible:    apache (Apache HTTP Project)
 > >State:          open
 > >Class:          doc-bug
 > >Submitter-Id:   apache
 > >Arrival-Date:   Thu May 15 14:00:01 1997
 > >Originator:     danielr@ccs.neu.edu
 > >Organization:
 > apache
 > >Release:        1.2b10
 > >Environment:
 > SunOS 4.1.4
 > gcc version 2.7.2.1
 > >Description:
 > The current documentation for <Location> states:
 > 	"It is comparable to the <Directory> directive"
 > In the "Context:" section for commands location is never listed, but directory is.
 > However, when trying to use the Options and AllowOverride directives in this sense:
 > 	<Location /home/*>
 > 	Options None
 > 	AllowOverride None
 > 	</Location>
 > The results do not match the behavior indicated.
 > >How-To-Repeat:
 > 
 > >Fix:
 > Better documentation of what directives <Location> can us
 > >Audit-Trail:
 > >Unformatted:
 > 
 > 
 >