httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Greg Stein <gst...@lyra.org>
Subject Re: cvs commit: httpd-2.0/server core.c Makefile.in connection.c
Date Mon, 05 Mar 2001 08:22:03 GMT
On Sun, Mar 04, 2001 at 04:08:40PM -0600, William A. Rowe, Jr. wrote:
> From: "Greg Stein" <gstein@lyra.org>
> Sent: Sunday, March 04, 2001 3:53 PM
> 
> 
> > On Sun, Mar 04, 2001 at 11:24:20AM -0800, rbb@covalent.net wrote:
> > >...
> > > bunch of code so that more people can work on it.  Explain to me how it
> > > makes sense to put the DocumentRoot directive in the HTTP module.  I
> > 
> > Actually, I think DocumentRoot *is* HTTP specific :-)
> 
> No, DocumentRoot is the root of the resources.  It is _not_ HTTP specific.
> It _is_ core_fs specific (going back to the modular filesystem debate :-)

I don't buy it, but am not worried about arguing it right now :-)

> > SMTP, POP, SNMP, and NNTP wouldn't use it. I could see FTP using it, but I
> > probably would have used a different name anyway.
> 
> No.  First, FTP likely needs it's own host block (servername:21).

Host block is orthogonal to DocumentRoot.

> Second, you
> don't want to reimplement core_fs for a half-dozen protocols like FTP and Gopher
> when you still get right down to a resource.

"core_fs" as you're envisioning it is probably quite close to how mod_dav_fs
exposes the filesystem to mod_dav. Specifically, dav_hooks_repository.

Personally, if you want to really push for an FS module, then alter the core
to use dav_hooks_repository and mod_dav_fs to fetch resources. Where we have
backwards compat issues, then core would just hack that info from the
repository results. The theory being that the core could then begin to serve
information from other dav_hooks_repository implementors.

> Second, the other's you mention are _not_ resource-oriented.  I'm still figuring
> Apache serves resources.  Those other URI's specify transients.  You can't simply
> nttp://server/somethingspecific and get what you want.

Multiprotocol means "serve a protocol." Has nothing to do with serving
resources. See mod_echo :-)

And note that POP and SMTP don't even use URIs. The whole URI gunk in the
new server files is a non-starter. All the URI stuff should be *utility*
functions, used by the protocol modules if/when they apply. The server
itself should not do *anything* about them. The execution path from MPM to
request processing should never mention URI. When you hit mod_http's request
processing, *then* you read the first line of the request, which has the URI
in it, which then calls some standard function for mapping that into a
dav_resource like thing.

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/

Mime
View raw message