]> granicus.if.org Git - apache/commitdiff
Add <IfModule> conditionals around non-core directives.
authorWilfredo Sanchez <wsanchez@apache.org>
Mon, 25 Nov 2002 08:10:35 +0000 (08:10 +0000)
committerWilfredo Sanchez <wsanchez@apache.org>
Mon, 25 Nov 2002 08:10:35 +0000 (08:10 +0000)
Submitted by: Tim Wilde <twilde@dyndns.org>

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97642 13f79535-47bb-0310-9956-ffa450edef68

docs/conf/httpd-std.conf.in

index 636ea162ea602d21be00ada904e8cde957916552..8fd8b13da8d885bff9c57d657d2d75ded0e8f0aa 100644 (file)
@@ -116,11 +116,11 @@ KeepAliveTimeout 15
 # MaxClients: maximum number of server processes allowed to start
 # MaxRequestsPerChild: maximum number of requests a server process serves
 <IfModule prefork.c>
-StartServers         5
-MinSpareServers      5
-MaxSpareServers     10
-MaxClients         150
-MaxRequestsPerChild  0
+    StartServers          5
+    MinSpareServers       5
+    MaxSpareServers      10
+    MaxClients          150
+    MaxRequestsPerChild   0
 </IfModule>
 
 # worker MPM
@@ -131,12 +131,12 @@ MaxRequestsPerChild  0
 # ThreadsPerChild: constant number of worker threads in each server process
 # MaxRequestsPerChild: maximum number of requests a server process serves
 <IfModule worker.c>
-StartServers         2
-MaxClients         150
-MinSpareThreads     25
-MaxSpareThreads     75 
-ThreadsPerChild     25
-MaxRequestsPerChild  0
+    StartServers          2
+    MaxClients          150
+    MinSpareThreads      25
+    MaxSpareThreads      75 
+    ThreadsPerChild      25
+    MaxRequestsPerChild   0
 </IfModule>
 
 # perchild MPM
@@ -147,20 +147,20 @@ MaxRequestsPerChild  0
 # MaxThreadsPerChild: maximum number of worker threads in each server process
 # MaxRequestsPerChild: maximum number of connections per server process
 <IfModule perchild.c>
-NumServers           5
-StartThreads         5
-MinSpareThreads      5
-MaxSpareThreads     10
-MaxThreadsPerChild  20
-MaxRequestsPerChild  0
+    NumServers            5
+    StartThreads          5
+    MinSpareThreads       5
+    MaxSpareThreads      10
+    MaxThreadsPerChild   20
+    MaxRequestsPerChild   0
 </IfModule>
 
 # WinNT MPM
 # ThreadsPerChild: constant number of worker threads in the server process
 # MaxRequestsPerChild: maximum  number of requests a server process serves
 <IfModule mpm_winnt.c>
-ThreadsPerChild 250
-MaxRequestsPerChild  0
+    ThreadsPerChild     250
+    MaxRequestsPerChild   0
 </IfModule>
 
 # BeOS MPM
@@ -168,10 +168,10 @@ MaxRequestsPerChild  0
 # MaxClients:   max number of threads we can have (1 thread == 1 client)
 # MaxRequestsPerThread: maximum number of requests each thread will process
 <IfModule beos.c>
-StartThreads               10
-MaxClients                 50
-MaxRequestsPerThread       10000
-</IfModule>    
+    StartThreads            10
+    MaxClients              50
+    MaxRequestsPerThread 10000
+</IfModule>
 
 # NetWare MPM
 # ThreadStackSize: Stack size allocated for each worker thread
@@ -184,12 +184,12 @@ MaxRequestsPerThread       10000
 #                      directive on NetWare.  This will allow the thread to 
 #                      continue to service requests indefinitely.                          
 <IfModule mpm_netware.c>
-ThreadStackSize      65536
-StartThreads           250
-MinSpareThreads         25
-MaxSpareThreads        250
-MaxThreads            1000
-MaxRequestsPerChild      0
+    ThreadStackSize      65536
+    StartThreads           250
+    MinSpareThreads         25
+    MaxSpareThreads        250
+    MaxThreads            1000
+    MaxRequestsPerChild      0
 </IfModule>
 
 # OS/2 MPM
@@ -199,10 +199,10 @@ MaxRequestsPerChild      0
 # MaxSpareThreads: Maximum number of idle threads per process
 # MaxRequestsPerChild: Maximum number of connections per server process
 <IfModule mpmt_os2.c>
-StartServers           2
-MinSpareThreads        5
-MaxSpareThreads       10
-MaxRequestsPerChild    0
+    StartServers           2
+    MinSpareThreads        5
+    MaxSpareThreads       10
+    MaxRequestsPerChild    0
 </IfModule>
 
 #
@@ -331,30 +331,30 @@ DocumentRoot "@exp_htdocsdir@"
 #
 <Directory "@exp_htdocsdir@">
 
-#
-# Possible values for the Options directive are "None", "All",
-# or any combination of:
-#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI Multiviews
-#
-# Note that "MultiViews" must be named *explicitly* --- "Options All"
-# doesn't give it to you.
-#
-# The Options directive is both complicated and important.  Please see
-# http://httpd.apache.org/docs-2.0/mod/core.html#options
-# for more information.
-#
+    #
+    # Possible values for the Options directive are "None", "All",
+    # or any combination of:
+    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI Multiviews
+    #
+    # Note that "MultiViews" must be named *explicitly* --- "Options All"
+    # doesn't give it to you.
+    #
+    # The Options directive is both complicated and important.  Please see
+    # http://httpd.apache.org/docs-2.0/mod/core.html#options
+    # for more information.
+    #
     Options Indexes FollowSymLinks
 
-#
-# AllowOverride controls what directives may be placed in .htaccess files.
-# It can be "All", "None", or any combination of the keywords:
-#   Options FileInfo AuthConfig Limit
-#
+    #
+    # AllowOverride controls what directives may be placed in .htaccess files.
+    # It can be "All", "None", or any combination of the keywords:
+    #   Options FileInfo AuthConfig Limit
+    #
     AllowOverride None
 
-#
-# Controls who can get stuff from this server.
-#
+    #
+    # Controls who can get stuff from this server.
+    #
     Order allow,deny
     Allow from all
 
@@ -364,7 +364,9 @@ DocumentRoot "@exp_htdocsdir@"
 # UserDir: The name of the directory that is appended onto a user's home
 # directory if a ~user request is received.
 #
-UserDir public_html
+<IfModule mod_userdir.c>
+    UserDir public_html
+</IfModule>
 
 #
 # Control access to UserDir directories.  The following is an example
@@ -391,7 +393,9 @@ UserDir public_html
 # negotiated documents.  The MultiViews Option can be used for the 
 # same purpose, but it is much slower.
 #
-DirectoryIndex index.html index.html.var
+<IfModule mod_dir.c>
+    DirectoryIndex index.html index.html.var
+</IfModule>
 
 #
 # AccessFileName: The name of the file to look for in each directory
@@ -409,11 +413,14 @@ AccessFileName .htaccess
     Deny from all
 </Files>
 
-#
-# TypesConfig describes where the mime.types file (or equivalent) is
-# to be found.
-#
-TypesConfig @rel_sysconfdir@/mime.types
+<IfModule mod_mime.c>
+    #
+    # TypesConfig describes where the mime.types file (or equivalent) is
+    # to be found.
+    #
+    TypesConfig @rel_sysconfdir@/mime.types
+
+</IfModule>
 
 #
 # DefaultType is the default MIME type the server will use for a document
@@ -480,39 +487,41 @@ ErrorLog @rel_logfiledir@/error_log
 #
 LogLevel warn
 
-#
-# The following directives define some format nicknames for use with
-# a CustomLog directive (see below).
-#
-LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
-LogFormat "%h %l %u %t \"%r\" %>s %b" common
-LogFormat "%{Referer}i -> %U" referer
-LogFormat "%{User-agent}i" agent
-
-# You need to enable mod_logio.c to use %I and %O
-#LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
-
-#
-# The location and format of the access logfile (Common Logfile Format).
-# If you do not define any access logfiles within a <VirtualHost>
-# container, they will be logged here.  Contrariwise, if you *do*
-# define per-<VirtualHost> access logfiles, transactions will be
-# logged therein and *not* in this file.
-#
-CustomLog @rel_logfiledir@/access_log common
-
-#
-# If you would like to have agent and referer logfiles, uncomment the
-# following directives.
-#
-#CustomLog @rel_logfiledir@/referer_log referer
-#CustomLog @rel_logfiledir@/agent_log agent
-
-#
-# If you prefer a single logfile with access, agent, and referer information
-# (Combined Logfile Format) you can use the following directive.
-#
-#CustomLog @rel_logfiledir@/access_log combined
+<IfModule mod_log_config.c>
+    #
+    # The following directives define some format nicknames for use with
+    # a CustomLog directive (see below).
+    #
+    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
+    LogFormat "%h %l %u %t \"%r\" %>s %b" common
+    LogFormat "%{Referer}i -> %U" referer
+    LogFormat "%{User-agent}i" agent
+
+    # You need to enable mod_logio.c to use %I and %O
+    #LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
+
+    #
+    # The location and format of the access logfile (Common Logfile Format).
+    # If you do not define any access logfiles within a <VirtualHost>
+    # container, they will be logged here.  Contrariwise, if you *do*
+    # define per-<VirtualHost> access logfiles, transactions will be
+    # logged therein and *not* in this file.
+    #
+    CustomLog @rel_logfiledir@/access_log common
+
+    #
+    # If you would like to have agent and referer logfiles, uncomment the
+    # following directives.
+    #
+    #CustomLog @rel_logfiledir@/referer_log referer
+    #CustomLog @rel_logfiledir@/agent_log agent
+
+    #
+    # If you prefer a single logfile with access, agent, and referer information
+    # (Combined Logfile Format) you can use the following directive.
+    #
+    #CustomLog @rel_logfiledir@/access_log combined
+</IfModule>
 
 #
 # ServerTokens
@@ -534,59 +543,62 @@ ServerTokens Full
 #
 ServerSignature On
 
-#
-# Aliases: Add here as many aliases as you need (with no limit). The format is 
-# Alias fakename realname
-#
-# Note that if you include a trailing / on fakename then the server will
-# require it to be present in the URL.  So "/icons" isn't aliased in this
-# example, only "/icons/".  If the fakename is slash-terminated, then the 
-# realname must also be slash terminated, and if the fakename omits the 
-# trailing slash, the realname must also omit it.
-#
-# We include the /icons/ alias for FancyIndexed directory listings.  If you
-# do not use FancyIndexing, you may comment this out.
-#
-Alias /icons/ "@exp_iconsdir@/"
-
-<Directory "@exp_iconsdir@">
-    Options Indexes MultiViews
-    AllowOverride None
-    Order allow,deny
-    Allow from all
-</Directory>
-
-#
-# This should be changed to the ServerRoot/manual/.  The alias provides
-# the manual, even if you choose to move your DocumentRoot.  You may comment
-# this out if you do not care for the documentation.
-#
-Alias /manual "@exp_manualdir@"
+<IfModule mod_alias.c>
+    #
+    # Aliases: Add here as many aliases as you need (with no limit). The format is 
+    # Alias fakename realname
+    #
+    # Note that if you include a trailing / on fakename then the server will
+    # require it to be present in the URL.  So "/icons" isn't aliased in this
+    # example, only "/icons/".  If the fakename is slash-terminated, then the 
+    # realname must also be slash terminated, and if the fakename omits the 
+    # trailing slash, the realname must also omit it.
+    #
+    # We include the /icons/ alias for FancyIndexed directory listings.  If
+    # you do not use FancyIndexing, you may comment this out.
+    #
+    Alias /icons/ "@exp_iconsdir@/"
+
+    <Directory "@exp_iconsdir@">
+        Options Indexes MultiViews
+        AllowOverride None
+        Order allow,deny
+        Allow from all
+    </Directory>
+
+    #
+    # This should be changed to the ServerRoot/manual/.  The alias provides
+    # the manual, even if you choose to move your DocumentRoot.  You may
+    # comment this out if you do not care for the documentation.
+    #
+    Alias /manual "@exp_manualdir@"
+
+    <Directory "@exp_manualdir@">
+        Options Indexes FollowSymLinks MultiViews IncludesNoExec
+        AddOutputFilter Includes html
+        AllowOverride None
+        Order allow,deny
+        Allow from all
+    </Directory>
+
+    #
+    # ScriptAlias: This controls which directories contain server scripts. 
+    # ScriptAliases are essentially the same as Aliases, except that
+    # documents in the realname directory are treated as applications and
+    # run by the server when requested rather than as documents sent to the
+    # client.  The same rules about trailing "/" apply to ScriptAlias
+    # directives as to Alias.
+    #
+    ScriptAlias /cgi-bin/ "@exp_cgidir@/"
 
-<Directory "@exp_manualdir@">
-    Options Indexes FollowSymLinks MultiViews IncludesNoExec
-    AddOutputFilter Includes html
-    AllowOverride None
-    Order allow,deny
-    Allow from all
-</Directory>
-
-#
-# ScriptAlias: This controls which directories contain server scripts.
-# ScriptAliases are essentially the same as Aliases, except that
-# documents in the realname directory are treated as applications and
-# run by the server when requested rather than as documents sent to the client.
-# The same rules about trailing "/" apply to ScriptAlias directives as to
-# Alias.
-#
-ScriptAlias /cgi-bin/ "@exp_cgidir@/"
+</IfModule>
 
 <IfModule mod_cgid.c>
-#
-# Additional to mod_cgid.c settings, mod_cgid has Scriptsock <path>
-# for setting UNIX socket for communicating with cgid.
-#
-#Scriptsock            @rel_runtimedir@/cgisock
+    #
+    # Additional to mod_cgid.c settings, mod_cgid has Scriptsock <path>
+    # for setting UNIX socket for communicating with cgid.
+    #
+    #Scriptsock @rel_runtimedir@/cgisock
 </IfModule>
 
 #
@@ -610,267 +622,277 @@ ScriptAlias /cgi-bin/ "@exp_cgidir@/"
 #
 # Directives controlling the display of server-generated directory listings.
 #
+<IfModule mod_autoindex.c>
+
+    #
+    # IndexOptions: Controls the appearance of server-generated directory
+    # listings.
+    #
+    IndexOptions FancyIndexing VersionSort
+
+    #
+    # AddIcon* directives tell the server which icon to show for different
+    # files or filename extensions.  These are only displayed for
+    # FancyIndexed directories.
+    #
+    AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
+
+    AddIconByType (TXT,/icons/text.gif) text/*
+    AddIconByType (IMG,/icons/image2.gif) image/*
+    AddIconByType (SND,/icons/sound2.gif) audio/*
+    AddIconByType (VID,/icons/movie.gif) video/*
+
+    AddIcon /icons/binary.gif .bin .exe
+    AddIcon /icons/binhex.gif .hqx
+    AddIcon /icons/tar.gif .tar
+    AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
+    AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
+    AddIcon /icons/a.gif .ps .ai .eps
+    AddIcon /icons/layout.gif .html .shtml .htm .pdf
+    AddIcon /icons/text.gif .txt
+    AddIcon /icons/c.gif .c
+    AddIcon /icons/p.gif .pl .py
+    AddIcon /icons/f.gif .for
+    AddIcon /icons/dvi.gif .dvi
+    AddIcon /icons/uuencoded.gif .uu
+    AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
+    AddIcon /icons/tex.gif .tex
+    AddIcon /icons/bomb.gif core
+
+    AddIcon /icons/back.gif ..
+    AddIcon /icons/hand.right.gif README
+    AddIcon /icons/folder.gif ^^DIRECTORY^^
+    AddIcon /icons/blank.gif ^^BLANKICON^^
+
+    #
+    # DefaultIcon is which icon to show for files which do not have an icon
+    # explicitly set.
+    #
+    DefaultIcon /icons/unknown.gif
+
+    #
+    # AddDescription allows you to place a short description after a file in
+    # server-generated indexes.  These are only displayed for FancyIndexed
+    # directories.
+    # Format: AddDescription "description" filename
+    #
+    #AddDescription "GZIP compressed document" .gz
+    #AddDescription "tar archive" .tar
+    #AddDescription "GZIP compressed tar archive" .tgz
+
+    #
+    # ReadmeName is the name of the README file the server will look for by
+    # default, and append to directory listings.
+    #
+    # HeaderName is the name of a file which should be prepended to
+    # directory indexes. 
+    ReadmeName README.html
+    HeaderName HEADER.html
+
+    #
+    # IndexIgnore is a set of filenames which directory indexing should ignore
+    # and not include in the listing.  Shell-style wildcarding is permitted.
+    #
+    IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
+</IfModule>
 
-#
-# IndexOptions: Controls the appearance of server-generated directory
-# listings.
-#
-IndexOptions FancyIndexing VersionSort
-
-#
-# AddIcon* directives tell the server which icon to show for different
-# files or filename extensions.  These are only displayed for
-# FancyIndexed directories.
-#
-AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
-
-AddIconByType (TXT,/icons/text.gif) text/*
-AddIconByType (IMG,/icons/image2.gif) image/*
-AddIconByType (SND,/icons/sound2.gif) audio/*
-AddIconByType (VID,/icons/movie.gif) video/*
-
-AddIcon /icons/binary.gif .bin .exe
-AddIcon /icons/binhex.gif .hqx
-AddIcon /icons/tar.gif .tar
-AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
-AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
-AddIcon /icons/a.gif .ps .ai .eps
-AddIcon /icons/layout.gif .html .shtml .htm .pdf
-AddIcon /icons/text.gif .txt
-AddIcon /icons/c.gif .c
-AddIcon /icons/p.gif .pl .py
-AddIcon /icons/f.gif .for
-AddIcon /icons/dvi.gif .dvi
-AddIcon /icons/uuencoded.gif .uu
-AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
-AddIcon /icons/tex.gif .tex
-AddIcon /icons/bomb.gif core
-
-AddIcon /icons/back.gif ..
-AddIcon /icons/hand.right.gif README
-AddIcon /icons/folder.gif ^^DIRECTORY^^
-AddIcon /icons/blank.gif ^^BLANKICON^^
-
-#
-# DefaultIcon is which icon to show for files which do not have an icon
-# explicitly set.
-#
-DefaultIcon /icons/unknown.gif
-
-#
-# AddDescription allows you to place a short description after a file in
-# server-generated indexes.  These are only displayed for FancyIndexed
-# directories.
-# Format: AddDescription "description" filename
-#
-#AddDescription "GZIP compressed document" .gz
-#AddDescription "tar archive" .tar
-#AddDescription "GZIP compressed tar archive" .tgz
-
-#
-# ReadmeName is the name of the README file the server will look for by
-# default, and append to directory listings.
-#
-# HeaderName is the name of a file which should be prepended to
-# directory indexes. 
-ReadmeName README.html
-HeaderName HEADER.html
-
-#
-# IndexIgnore is a set of filenames which directory indexing should ignore
-# and not include in the listing.  Shell-style wildcarding is permitted.
-#
-IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
-
-#
-# AddEncoding allows you to have certain browsers (Mosaic/X 2.1+) uncompress
-# information on the fly. Note: Not all browsers support this.
-# Despite the name similarity, the following Add* directives have nothing
-# to do with the FancyIndexing customization directives above.
-#
-AddEncoding x-compress Z
-AddEncoding x-gzip gz tgz
-
-#
-# DefaultLanguage and AddLanguage allows you to specify the language of 
-# a document. You can then use content negotiation to give a browser a 
-# file in a language the user can understand.
-#
-# Specify a default language. This means that all data
-# going out without a specific language tag (see below) will 
-# be marked with this one. You probably do NOT want to set
-# this unless you are sure it is correct for all cases.
-#
-# * It is generally better to not mark a page as 
-# * being a certain language than marking it with the wrong
-# * language!
-#
-# DefaultLanguage nl
-#
-# Note 1: The suffix does not have to be the same as the language
-# keyword --- those with documents in Polish (whose net-standard
-# language code is pl) may wish to use "AddLanguage pl .po" to
-# avoid the ambiguity with the common suffix for perl scripts.
-#
-# Note 2: The example entries below illustrate that in some cases 
-# the two character 'Language' abbreviation is not identical to 
-# the two character 'Country' code for its country,
-# E.g. 'Danmark/dk' versus 'Danish/da'.
-#
-# Note 3: In the case of 'ltz' we violate the RFC by using a three char
-# specifier. There is 'work in progress' to fix this and get
-# the reference data for rfc1766 cleaned up.
-#
-# Danish (da) - Dutch (nl) - English (en) - Estonian (et)
-# French (fr) - German (de) - Greek-Modern (el)
-# Italian (it) - Norwegian (no) - Norwegian Nynorsk (nn) - Korean (ko) 
-# Portugese (pt) - Luxembourgeois* (ltz)
-# Spanish (es) - Swedish (sv) - Catalan (ca) - Czech(cz)
-# Polish (pl) - Brazilian Portuguese (pt-br) - Japanese (ja)
-# Russian (ru) - Croatian (hr)
-#
-AddLanguage da .dk
-AddLanguage nl .nl
-AddLanguage en .en
-AddLanguage et .et
-AddLanguage fr .fr
-AddLanguage de .de
-AddLanguage he .he
-AddLanguage el .el
-AddLanguage it .it
-AddLanguage ja .ja
-AddLanguage pl .po
-AddLanguage ko .ko
-AddLanguage pt .pt
-AddLanguage nn .nn
-AddLanguage no .no
-AddLanguage pt-br .pt-br
-AddLanguage ltz .ltz
-AddLanguage ca .ca
-AddLanguage es .es
-AddLanguage sv .se
-AddLanguage cz .cz
-AddLanguage ru .ru
-AddLanguage tw .tw
-AddLanguage zh-tw .tw
-AddLanguage hr .hr
-
-#
-# LanguagePriority allows you to give precedence to some languages
-# in case of a tie during content negotiation.
-#
-# Just list the languages in decreasing order of preference. We have
-# more or less alphabetized them here. You probably want to change this.
-#
-LanguagePriority en da nl et fr de el it ja ko no pl pt pt-br ltz ca es sv tw
-
-#
-# ForceLanguagePriority allows you to serve a result page rather than
-# MULTIPLE CHOICES (Prefer) [in case of a tie] or NOT ACCEPTABLE (Fallback)
-# [in case no accepted languages matched the available variants]
-#
-ForceLanguagePriority Prefer Fallback
-
-#
-# Specify a default charset for all pages sent out. This is
-# always a good idea and opens the door for future internationalisation
-# of your web site, should you ever want it. Specifying it as
-# a default does little harm; as the standard dictates that a page
-# is in iso-8859-1 (latin1) unless specified otherwise i.e. you
-# are merely stating the obvious. There are also some security
-# reasons in browsers, related to javascript and URL parsing
-# which encourage you to always set a default char set.
-#
-AddDefaultCharset ISO-8859-1
-
-#
-# Commonly used filename extensions to character sets. You probably
-# want to avoid clashes with the language extensions, unless you
-# are good at carefully testing your setup after each change.
-# See ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets for
-# the official list of charset names and their respective RFCs
-#
-AddCharset ISO-8859-1  .iso8859-1  .latin1
-AddCharset ISO-8859-2  .iso8859-2  .latin2 .cen
-AddCharset ISO-8859-3  .iso8859-3  .latin3
-AddCharset ISO-8859-4  .iso8859-4  .latin4
-AddCharset ISO-8859-5  .iso8859-5  .latin5 .cyr .iso-ru
-AddCharset ISO-8859-6  .iso8859-6  .latin6 .arb
-AddCharset ISO-8859-7  .iso8859-7  .latin7 .grk
-AddCharset ISO-8859-8  .iso8859-8  .latin8 .heb
-AddCharset ISO-8859-9  .iso8859-9  .latin9 .trk
-AddCharset ISO-2022-JP .iso2022-jp .jis
-AddCharset ISO-2022-KR .iso2022-kr .kis
-AddCharset ISO-2022-CN .iso2022-cn .cis
-AddCharset Big5        .Big5       .big5
-# For russian, more than one charset is used (depends on client, mostly):
-AddCharset WINDOWS-1251 .cp-1251   .win-1251
-AddCharset CP866       .cp866
-AddCharset KOI8-r      .koi8-r .koi8-ru
-AddCharset KOI8-ru     .koi8-uk .ua
-AddCharset ISO-10646-UCS-2 .ucs2
-AddCharset ISO-10646-UCS-4 .ucs4
-AddCharset UTF-8       .utf8
-
-# The set below does not map to a specific (iso) standard
-# but works on a fairly wide range of browsers. Note that
-# capitalization actually matters (it should not, but it
-# does for some browsers).
-#
-# See ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets
-# for a list of sorts. But browsers support few.
-#
-AddCharset GB2312      .gb2312 .gb 
-AddCharset utf-7       .utf7
-AddCharset utf-8       .utf8
-AddCharset big5        .big5 .b5
-AddCharset EUC-TW      .euc-tw
-AddCharset EUC-JP      .euc-jp
-AddCharset EUC-KR      .euc-kr
-AddCharset shift_jis   .sjis
-
-#
-# AddType allows you to add to or override the MIME configuration
-# file mime.types for specific file types.
-#
-AddType application/x-tar .tgz
-AddType image/x-icon .ico
-
-#
-# AddHandler allows you to map certain file extensions to "handlers":
-# actions unrelated to filetype. These can be either built into the server
-# or added with the Action directive (see below)
-#
-# To use CGI scripts outside of ScriptAliased directories:
-# (You will also need to add "ExecCGI" to the "Options" directive.)
-#
-#AddHandler cgi-script .cgi
+<IfModule mod_mime.c>
+    #
+    # AddEncoding allows you to have certain browsers (Mosaic/X 2.1+)
+    # uncompress information on the fly. Note: Not all browsers support
+    # this.  Despite the name similarity, the following Add* directives have
+    # nothing to do with the FancyIndexing customization directives above.
+    #
+    AddEncoding x-compress Z
+    AddEncoding x-gzip gz tgz
+
+    #
+    # DefaultLanguage and AddLanguage allows you to specify the language of 
+    # a document. You can then use content negotiation to give a browser a 
+    # file in a language the user can understand.
+    #
+    # Specify a default language. This means that all data
+    # going out without a specific language tag (see below) will 
+    # be marked with this one. You probably do NOT want to set
+    # this unless you are sure it is correct for all cases.
+    #
+    # * It is generally better to not mark a page as 
+    # * being a certain language than marking it with the wrong
+    # * language!
+    #
+    # DefaultLanguage nl
+    #
+    # Note 1: The suffix does not have to be the same as the language
+    # keyword --- those with documents in Polish (whose net-standard
+    # language code is pl) may wish to use "AddLanguage pl .po" to
+    # avoid the ambiguity with the common suffix for perl scripts.
+    #
+    # Note 2: The example entries below illustrate that in some cases 
+    # the two character 'Language' abbreviation is not identical to 
+    # the two character 'Country' code for its country,
+    # E.g. 'Danmark/dk' versus 'Danish/da'.
+    #
+    # Note 3: In the case of 'ltz' we violate the RFC by using a three char
+    # specifier. There is 'work in progress' to fix this and get
+    # the reference data for rfc1766 cleaned up.
+    #
+    # Danish (da) - Dutch (nl) - English (en) - Estonian (et)
+    # French (fr) - German (de) - Greek-Modern (el)
+    # Italian (it) - Norwegian (no) - Norwegian Nynorsk (nn) - Korean (ko) 
+    # Portugese (pt) - Luxembourgeois* (ltz)
+    # Spanish (es) - Swedish (sv) - Catalan (ca) - Czech(cz)
+    # Polish (pl) - Brazilian Portuguese (pt-br) - Japanese (ja)
+    # Russian (ru) - Croatian (hr)
+    #
+    AddLanguage da .dk
+    AddLanguage nl .nl
+    AddLanguage en .en
+    AddLanguage et .et
+    AddLanguage fr .fr
+    AddLanguage de .de
+    AddLanguage he .he
+    AddLanguage el .el
+    AddLanguage it .it
+    AddLanguage ja .ja
+    AddLanguage pl .po
+    AddLanguage ko .ko
+    AddLanguage pt .pt
+    AddLanguage nn .nn
+    AddLanguage no .no
+    AddLanguage pt-br .pt-br
+    AddLanguage ltz .ltz
+    AddLanguage ca .ca
+    AddLanguage es .es
+    AddLanguage sv .se
+    AddLanguage cz .cz
+    AddLanguage ru .ru
+    AddLanguage tw .tw
+    AddLanguage zh-tw .tw
+    AddLanguage hr .hr
 
-#
-# For files that include their own HTTP headers:
-#
-#AddHandler send-as-is asis
+</IfModule>
 
-#
-# For server-parsed imagemap files:
-#
-#AddHandler imap-file map
+<IfModule mod_negotiation.c>
+    #
+    # LanguagePriority allows you to give precedence to some languages
+    # in case of a tie during content negotiation.
+    #
+    # Just list the languages in decreasing order of preference. We have
+    # more or less alphabetized them here. You probably want to change this.
+    #
+    LanguagePriority en da nl et fr de el it ja ko no pl pt pt-br ltz ca es sv tw
+
+    #
+    # ForceLanguagePriority allows you to serve a result page rather than
+    # MULTIPLE CHOICES (Prefer) [in case of a tie] or NOT ACCEPTABLE (Fallback)
+    # [in case no accepted languages matched the available variants]
+    #
+    ForceLanguagePriority Prefer Fallback
 
-#
-# For type maps (negotiated resources):
-# (This is enabled by default to allow the Apache "It Worked" page
-#  to be distributed in multiple languages.)
-#
-AddHandler type-map var
+</IfModule>
 
-#
-# Filters allow you to process content before it is sent to the client.
-#
-# To parse .shtml files for server-side includes (SSI):
-# (You will also need to add "Includes" to the "Options" directive.)
-#
-#AddType text/html .shtml
-#AddOutputFilter INCLUDES .shtml
+<IfModule mod_mime.c>
+    #
+    # Specify a default charset for all pages sent out. This is
+    # always a good idea and opens the door for future internationalisation
+    # of your web site, should you ever want it. Specifying it as
+    # a default does little harm; as the standard dictates that a page
+    # is in iso-8859-1 (latin1) unless specified otherwise i.e. you
+    # are merely stating the obvious. There are also some security
+    # reasons in browsers, related to javascript and URL parsing
+    # which encourage you to always set a default char set.
+    #
+    AddDefaultCharset ISO-8859-1
+
+    #
+    # Commonly used filename extensions to character sets. You probably
+    # want to avoid clashes with the language extensions, unless you
+    # are good at carefully testing your setup after each change.
+    # See ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets for
+    # the official list of charset names and their respective RFCs
+    #
+    AddCharset ISO-8859-1  .iso8859-1  .latin1
+    AddCharset ISO-8859-2  .iso8859-2  .latin2 .cen
+    AddCharset ISO-8859-3  .iso8859-3  .latin3
+    AddCharset ISO-8859-4  .iso8859-4  .latin4
+    AddCharset ISO-8859-5  .iso8859-5  .latin5 .cyr .iso-ru
+    AddCharset ISO-8859-6  .iso8859-6  .latin6 .arb
+    AddCharset ISO-8859-7  .iso8859-7  .latin7 .grk
+    AddCharset ISO-8859-8  .iso8859-8  .latin8 .heb
+    AddCharset ISO-8859-9  .iso8859-9  .latin9 .trk
+    AddCharset ISO-2022-JP .iso2022-jp .jis
+    AddCharset ISO-2022-KR .iso2022-kr .kis
+    AddCharset ISO-2022-CN .iso2022-cn .cis
+    AddCharset Big5        .Big5       .big5
+    # For russian, more than one charset is used (depends on client, mostly):
+    AddCharset WINDOWS-1251 .cp-1251   .win-1251
+    AddCharset CP866       .cp866
+    AddCharset KOI8-r      .koi8-r .koi8-ru
+    AddCharset KOI8-ru     .koi8-uk .ua
+    AddCharset ISO-10646-UCS-2 .ucs2
+    AddCharset ISO-10646-UCS-4 .ucs4
+    AddCharset UTF-8       .utf8
+
+    # The set below does not map to a specific (iso) standard
+    # but works on a fairly wide range of browsers. Note that
+    # capitalization actually matters (it should not, but it
+    # does for some browsers).
+    #
+    # See ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets
+    # for a list of sorts. But browsers support few.
+    #
+    AddCharset GB2312      .gb2312 .gb 
+    AddCharset utf-7       .utf7
+    AddCharset utf-8       .utf8
+    AddCharset big5        .big5 .b5
+    AddCharset EUC-TW      .euc-tw
+    AddCharset EUC-JP      .euc-jp
+    AddCharset EUC-KR      .euc-kr
+    AddCharset shift_jis   .sjis
+
+    #
+    # AddType allows you to add to or override the MIME configuration
+    # file mime.types for specific file types.
+    #
+    AddType application/x-tar .tgz
+    AddType image/x-icon .ico
+
+    #
+    # AddHandler allows you to map certain file extensions to "handlers":
+    # actions unrelated to filetype. These can be either built into the server
+    # or added with the Action directive (see below)
+    #
+    # To use CGI scripts outside of ScriptAliased directories:
+    # (You will also need to add "ExecCGI" to the "Options" directive.)
+    #
+    #AddHandler cgi-script .cgi
+
+    #
+    # For files that include their own HTTP headers:
+    #
+    #AddHandler send-as-is asis
+
+    #
+    # For server-parsed imagemap files:
+    #
+    #AddHandler imap-file map
+
+    #
+    # For type maps (negotiated resources):
+    # (This is enabled by default to allow the Apache "It Worked" page
+    #  to be distributed in multiple languages.)
+    #
+    AddHandler type-map var
+
+    #
+    # Filters allow you to process content before it is sent to the client.
+    #
+    # To parse .shtml files for server-side includes (SSI):
+    # (You will also need to add "Includes" to the "Options" directive.)
+    #
+    #AddType text/html .shtml
+    #AddOutputFilter INCLUDES .shtml
+</IfModule>
 
 #
 # Action lets you define media types that will execute a script whenever
@@ -943,86 +965,91 @@ AddHandler type-map var
 #    ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var
 #    ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var
 
+<IfModule mod_setenvif.c>
+    #
+    # The following directives modify normal HTTP response behavior to
+    # handle known problems with browser implementations.
+    #
+    BrowserMatch "Mozilla/2" nokeepalive
+    BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
+    BrowserMatch "RealPlayer 4\.0" force-response-1.0
+    BrowserMatch "Java/1\.0" force-response-1.0
+    BrowserMatch "JDK/1\.0" force-response-1.0
+
+    #
+    # The following directive disables redirects on non-GET requests for
+    # a directory that does not include the trailing slash.  This fixes a 
+    # problem with Microsoft WebFolders which does not appropriately handle 
+    # redirects for folders with DAV methods.
+    # Same deal with Apple's DAV filesystem and Gnome VFS support for DAV.
+    #
+    BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
+    BrowserMatch "^WebDrive" redirect-carefully
+    BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully
+    BrowserMatch "^gnome-vfs" redirect-carefully
+</IfModule>
 
-#
-# The following directives modify normal HTTP response behavior to
-# handle known problems with browser implementations.
-#
-BrowserMatch "Mozilla/2" nokeepalive
-BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
-BrowserMatch "RealPlayer 4\.0" force-response-1.0
-BrowserMatch "Java/1\.0" force-response-1.0
-BrowserMatch "JDK/1\.0" force-response-1.0
-
-#
-# The following directive disables redirects on non-GET requests for
-# a directory that does not include the trailing slash.  This fixes a 
-# problem with Microsoft WebFolders which does not appropriately handle 
-# redirects for folders with DAV methods.
-# Same deal with Apple's DAV filesystem and Gnome VFS support for DAV.
-#
-BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
-BrowserMatch "^WebDrive" redirect-carefully
-BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully
-BrowserMatch "^gnome-vfs" redirect-carefully
-
-#
-# Allow server status reports generated by mod_status,
-# with the URL of http://servername/server-status
-# Change the ".example.com" to match your domain to enable.
-#
-#<Location /server-status>
-#    SetHandler server-status
-#    Order deny,allow
-#    Deny from all
-#    Allow from .example.com
-#</Location>
-
-#
-# Allow remote server configuration reports, with the URL of
-#  http://servername/server-info (requires that mod_info.c be loaded).
-# Change the ".example.com" to match your domain to enable.
-#
-#<Location /server-info>
-#    SetHandler server-info
-#    Order deny,allow
-#    Deny from all
-#    Allow from .example.com
-#</Location>
-
-#
-# Proxy Server directives. Uncomment the following lines to
-# enable the proxy server:
-#
-#<IfModule mod_proxy.c>
-#ProxyRequests On
-#
-#<Proxy *>
-#    Order deny,allow
-#    Deny from all
-#    Allow from .example.com
-#</Proxy>
+<IfModule mod_status.c>
+    #
+    # Allow server status reports generated by mod_status,
+    # with the URL of http://servername/server-status
+    # Change the ".example.com" to match your domain to enable.
+    #
+    #<Location /server-status>
+    #    SetHandler server-status
+    #    Order deny,allow
+    #    Deny from all
+    #    Allow from .example.com
+    #</Location>
+</IfModule>
 
-#
-# Enable/disable the handling of HTTP/1.1 "Via:" headers.
-# ("Full" adds the server version; "Block" removes all outgoing Via: headers)
-# Set to one of: Off | On | Full | Block
-#
-#ProxyVia On
+<IfModule mod_info.c>
+    #
+    # Allow remote server configuration reports, with the URL of
+    #  http://servername/server-info (requires that mod_info.c be loaded).
+    # Change the ".example.com" to match your domain to enable.
+    #
+    #<Location /server-info>
+    #    SetHandler server-info
+    #    Order deny,allow
+    #    Deny from all
+    #    Allow from .example.com
+    #</Location>
+</IfModule>
 
-#
-# To enable the cache as well, edit and uncomment the following lines:
-# (no cacheing without CacheRoot)
-#
-#CacheRoot "@exp_proxycachedir@"
-#CacheSize 5
-#CacheGcInterval 4
-#CacheMaxExpire 24
-#CacheLastModifiedFactor 0.1
-#CacheDefaultExpire 1
-#NoCache a-domain.com another-domain.edu joes.garage-sale.com
+<IfModule mod_proxy.c>
+    #
+    # Proxy Server directives. Uncomment the following lines to
+    # enable the proxy server:
+    #
+    #ProxyRequests On
+    #
+    #<Proxy *>
+    #    Order deny,allow
+    #    Deny from all
+    #    Allow from .example.com
+    #</Proxy>
+
+    #
+    # Enable/disable the handling of HTTP/1.1 "Via:" headers.
+    # ("Full" adds the server version; "Block" removes all outgoing Via: headers)
+    # Set to one of: Off | On | Full | Block
+    #
+    #ProxyVia On
+
+    #
+    # To enable the cache as well, edit and uncomment the following lines:
+    # (no cacheing without CacheRoot)
+    #
+    #CacheRoot "@exp_proxycachedir@"
+    #CacheSize 5
+    #CacheGcInterval 4
+    #CacheMaxExpire 24
+    #CacheLastModifiedFactor 0.1
+    #CacheDefaultExpire 1
+    #NoCache a-domain.com another-domain.edu joes.garage-sale.com
 
-#</IfModule>
+</IfModule>
 # End of proxy directives.
 
 #