fielding 97/04/27 02:54:35
Modified: src CHANGES Configuration.tmpl
Log:
Rearranged all modules to enhance understanding of their purpose
and relative order (and maybe even reduce some overhead), but without
changing their effective (per-hook) calling order. Added a
bunch of comments and removed some stray TABs.
Revision Changes Path
1.255 +7 -7 apache/src/CHANGES
Index: CHANGES
===================================================================
RCS file: /export/home/cvs/apache/src/CHANGES,v
retrieving revision 1.254
retrieving revision 1.255
diff -C3 -r1.254 -r1.255
*** CHANGES 1997/04/27 07:52:16 1.254
--- CHANGES 1997/04/27 09:54:33 1.255
***************
*** 1,4 ****
! Changes with Apache 1.2
*) Fix problem with scripts not receiving a SIGPIPE when client drops
the connection (e.g., when user presses Stop). Apache will now stop
--- 1,4 ----
! Changes with Apache 1.2b9
*) Fix problem with scripts not receiving a SIGPIPE when client drops
the connection (e.g., when user presses Stop). Apache will now stop
***************
*** 6,13 ****
[Roy Fielding and Nathan Kurz] PR#335
*) Rearrange Configuration.tmpl so that mod_rewrite has higher priority
! than mod_alias, and mod_alias has higher priority than mod_proxy.
! [Sameer Parekh]
*) Fix graceful restart. Eliminate many signal-related race
conditions in both forms of restart, and in SIGTERM. See
--- 6,15 ----
[Roy Fielding and Nathan Kurz] PR#335
*) Rearrange Configuration.tmpl so that mod_rewrite has higher priority
! than mod_alias, and mod_alias has higher priority than mod_proxy;
! rearranged all modules to enhance understanding of their purpose
! and relative order (and maybe even reduce some overhead).
! [Roy Fielding and Sameer Parekh]
*) Fix graceful restart. Eliminate many signal-related race
conditions in both forms of restart, and in SIGTERM. See
***************
*** 16,23 ****
*) Fix memory leaks in mod_rewrite, mod_browser, mod_include. Tune
memory allocator to avoid a behaviour that required extra blocks to
! be allocated.
! [Dean Gaudet]
*) Allow suexec to access files relative to current directory but not
above. (Excluding leading / or any .. directory.) [Ken Coar]
--- 18,24 ----
*) Fix memory leaks in mod_rewrite, mod_browser, mod_include. Tune
memory allocator to avoid a behaviour that required extra blocks to
! be allocated. [Dean Gaudet]
*) Allow suexec to access files relative to current directory but not
above. (Excluding leading / or any .. directory.) [Ken Coar]
***************
*** 79,86 ****
*) Updated mod_rewrite to 3.0.4: Fixes HTTP redirects from within
.htaccess files because the RewriteBase was not replaced correctly.
Updated mod_rewrite to 3.0.5: Fixes problem with rewriting inside
! <Directory> sections missing a trailing /.
! [Ralf S. Engelschall]
*) Clean up Linux settings in conf.h by detecting 2.x versus 1.x. For
1.x the settings are those of pre-1.2b8. For 2.x we include
--- 80,86 ----
*) Updated mod_rewrite to 3.0.4: Fixes HTTP redirects from within
.htaccess files because the RewriteBase was not replaced correctly.
Updated mod_rewrite to 3.0.5: Fixes problem with rewriting inside
! <Directory> sections missing a trailing /. [Ralf S. Engelschall]
*) Clean up Linux settings in conf.h by detecting 2.x versus 1.x. For
1.x the settings are those of pre-1.2b8. For 2.x we include
1.61 +90 -51 apache/src/Configuration.tmpl
Index: Configuration.tmpl
===================================================================
RCS file: /export/home/cvs/apache/src/Configuration.tmpl,v
retrieving revision 1.60
retrieving revision 1.61
diff -C3 -r1.60 -r1.61
*** Configuration.tmpl 1997/04/27 07:52:16 1.60
--- Configuration.tmpl 1997/04/27 09:54:34 1.61
***************
*** 118,196 ****
# is and the more memory it will take, so if you are unlikely to use the
# functionality of a particular module you might wish to leave it out.
! ## Basic modules (i.e., generally useful stuff that works everyplace):
! ## You should probably not comment out any of these unless you know what it
! ## does and you know you won't need it.
- Module mime_module mod_mime.o
- Module access_module mod_access.o
- Module auth_module mod_auth.o
- Module negotiation_module mod_negotiation.o
- Module includes_module mod_include.o
- Module dir_module mod_dir.o
- Module cgi_module mod_cgi.o
- Module userdir_module mod_userdir.o
Module env_module mod_env.o
- Module config_log_module mod_log_config.o
##
! ## The next three modules here are URL manipulation
##
! ## Finally, the proxy module. It's not as complete as it could be yet.
! ## But it's getting there.
! # Module proxy_module modules/proxy/libproxy.a
##
! ## Alias module
! Module alias_module mod_alias.o
! ## mod_rewrite allows for powerful URI-to-filename mapping, using
! ## regular expressions.
! # Module rewrite_module mod_rewrite.o
## The asis module implemented ".asis" file types, which allow the embedding
## of HTTP headers at the beginning of the document. mod_imap handles
internal
## imagemaps (no more cgi-bin/imagemap/!). mod_actions is used to specify
## CGI scripts which act as "handlers" for particular files, for example to
! ## automatically convert every GIF to another file type. mod_browser lets
! ## you set environment variables based on the User-Agent string; this is
! ## useful for conditional HTML, for example.
Module asis_module mod_asis.o
Module imap_module mod_imap.o
Module action_module mod_actions.o
- Module browser_module mod_browser.o
! ## Optional modules for NCSA user-agent/referer logging compatibility
! ## We recommend, however, that you just use the configurable access_log.
! # Module agent_log_module mod_log_agent.o
! # Module referer_log_module mod_log_referer.o
! ## cern_meta mimics the behavior of the CERN web server with regards to
! ## metainformation files.
! # Module cern_meta_module mod_cern_meta.o
! ## The status module allows the server to display current details about
! ## how well it is performing and what it is doing. Consider also enabling
! ## STATUS=yes (see the Rules section near the start of the file) to allow
! ## full status information. Check conf/access.conf on how to enable this.
! # Module status_module mod_status.o
! ## The Info module displays configuration information for the server and
! ## all included modules. It's very useful for debugging.
! # Module info_module mod_info.o
- ## Optional authentication modules.
##
## The anon_auth module allows for anonymous-FTP-style username/
## password authentication.
--- 118,223 ----
# is and the more memory it will take, so if you are unlikely to use the
# functionality of a particular module you might wish to leave it out.
! ##
! ## Config manipulation modules
! ##
! ## mod_env sets up additional or restricted environment variables to be
! ## passed to CGI/SSI scripts. It is listed first (lowest priority) since
! ## it does not do per-request stuff.
Module env_module mod_env.o
+ ## mod_dld defines commands that allow other modules to be loaded
+ ## dynamically (at runtime). This module is for experimental use only.
+
+ # Module dld_module mod_dld.o
##
! ## Request logging modules
##
! Module config_log_module mod_log_config.o
! ## Optional modules for NCSA user-agent/referer logging compatibility
! ## We recommend, however, that you just use the configurable access_log.
!
! # Module agent_log_module mod_log_agent.o
! # Module referer_log_module mod_log_referer.o
##
! ## Type checking modules
! ##
! ## mod_mime maps filename extensions to content types, encodings, and
! ## magic type handlers (the latter is obsoleted by mod_actions).
! ## mod_negotiation allows content selection based on the Accept* headers.
! Module mime_module mod_mime.o
! Module negotiation_module mod_negotiation.o
! ##
! ## Content delivery modules
! ##
! ## The status module allows the server to display current details about
! ## how well it is performing and what it is doing. Consider also enabling
! ## STATUS=yes (see the Rules section near the start of this file) to allow
! ## full status information. Check conf/access.conf on how to enable this.
! # Module status_module mod_status.o
!
! ## The Info module displays configuration information for the server and
! ## all included modules. It's very useful for debugging.
!
! # Module info_module mod_info.o
!
! ## mod_include translates server-side include (SSI) statements in text
files.
! ## mod_dir handles requests on directories and directory indexes.
! ## mod_cgi handles CGI scripts. mod_env sets up additional or restricted
! ## environment variables to be passed to CGI/SSI scripts.
!
! Module includes_module mod_include.o
! Module dir_module mod_dir.o
! Module cgi_module mod_cgi.o
## The asis module implemented ".asis" file types, which allow the embedding
## of HTTP headers at the beginning of the document. mod_imap handles
internal
## imagemaps (no more cgi-bin/imagemap/!). mod_actions is used to specify
## CGI scripts which act as "handlers" for particular files, for example to
! ## automatically convert every GIF to another file type.
Module asis_module mod_asis.o
Module imap_module mod_imap.o
Module action_module mod_actions.o
! ##
! ## URL translation modules.
! ##
! ## The UserDir module for selecting resource directories by user name
! ## and a common prefix, e.g., /~<user> , /usr/web/<user> , etc.
! Module userdir_module mod_userdir.o
! ## The proxy module enables the server to act as a proxy for outside
! ## http and ftp services. It's not as complete as it could be yet.
! ## NOTE: You do not want this module UNLESS you are running a proxy;
! ## it is not needed for normal (origin server) operation.
! # Module proxy_module modules/proxy/libproxy.a
! ## The Alias module provides simple URL translation and redirection.
! Module alias_module mod_alias.o
! ## mod_rewrite allows for powerful URI-to-URI and URI-to-filename mapping,
! ## using regular expressions.
! # Module rewrite_module mod_rewrite.o
##
+ ## Access control and authentication modules.
+ ##
+ Module access_module mod_access.o
+ Module auth_module mod_auth.o
+
## The anon_auth module allows for anonymous-FTP-style username/
## password authentication.
***************
*** 220,243 ****
# Module digest_module mod_digest.o
## The expires module can apply Expires: headers to resources,
## as a function of access time or modification time.
! # Module expires_module mod_expires.o
## The headers module can set arbitrary HTTP response headers,
! ## in server, vhost, access.conf or .htaccess configs
# Module headers_module mod_headers.o
! ## Outright experiments --- mod_dld defines commands which
! ## allows other modules to be loaded in at runtime,
!
! # Module dld_module mod_dld.o
!
## mod_usertrack.c is the new name for mod_cookies.c. This module
! ## uses Netscape cookies to automatically construct and log accurate
! ## click-trails from Netscape cookies, for compatible clients who
## aren't coming in via proxy.
##
## You do not need this, or any other module to allow your site
--- 247,274 ----
# Module digest_module mod_digest.o
+ ## Optional response header manipulation modules.
+ ##
+ ## cern_meta mimics the behavior of the CERN web server with regards to
+ ## metainformation files.
+
+ # Module cern_meta_module mod_cern_meta.o
+
## The expires module can apply Expires: headers to resources,
## as a function of access time or modification time.
! # Module expires_module mod_expires.o
## The headers module can set arbitrary HTTP response headers,
! ## as configured in server, vhost, access.conf or .htaccess configs
# Module headers_module mod_headers.o
! ## Miscellaneous modules
! ##
## mod_usertrack.c is the new name for mod_cookies.c. This module
! ## uses Netscape cookies to automatically construct and log
! ## click-trails from Netscape cookies, or compatible clients who
## aren't coming in via proxy.
##
## You do not need this, or any other module to allow your site
***************
*** 246,251 ****
# Module usertrack_module mod_usertrack.o
## The example module, which demonstrates the use of the API. See
! ## the file modules/example/README for details.
# Module example_module modules/example/mod_example.o
--- 277,290 ----
# Module usertrack_module mod_usertrack.o
## The example module, which demonstrates the use of the API. See
! ## the file modules/example/README for details. This module should
! ## only be used for testing -- DO NOT ENABLE IT on a production server.
# Module example_module modules/example/mod_example.o
+
+ ## mod_browser lets you set environment variables based on the User-Agent
+ ## string in the request; this is useful for conditional HTML, for example.
+ ## Since it is also used to detect buggy browsers for workarounds, it
+ ## should be the last (highest priority) module.
+
+ Module browser_module mod_browser.o