X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;f=apache-httpd.conf;h=e06e2de2b2e4c6f907673a99e97d0f1eff1cfce2;hb=4f6901ef9229f797a030abbd7dd9568478e4afae;hp=d4d4ae5823e91e0a03c8c8c5989e7bac72e057d6;hpb=888bfddeac9f6d3af5178645214ef95a8923533a;p=packages%2Fapache.git diff --git a/apache-httpd.conf b/apache-httpd.conf index d4d4ae5..e06e2de 100644 --- a/apache-httpd.conf +++ b/apache-httpd.conf @@ -1,174 +1,243 @@ -## -## httpd.conf -- Apache HTTP server configuration file -## +# +# Based upon the NCSA server configuration files originally by Rob McCool. +# +# This is the main Apache server configuration file. It contains the +# configuration directives that give the server its instructions. +# See for detailed information about +# the directives. +# +# Do NOT simply read the instructions in here without understanding +# what they do. They're here only as hints or reminders. If you are unsure +# consult the online docs. You have been warned. +# +# The configuration directives are grouped into three basic sections: +# 1. Directives that control the operation of the Apache server process as a +# whole (the 'global environment'). +# 2. Directives that define the parameters of the 'main' or 'default' server, +# which responds to requests that aren't handled by a virtual host. +# These directives also provide default values for the settings +# of all virtual hosts. +# 3. Settings for virtual hosts, which allow Web requests to be sent to +# different IP addresses or hostnames and have them handled by the +# same Apache server process. +# +# Configuration and logfile names: If the filenames you specify for many +# of the server's control files begin with "/" (or "drive:/" for Win32), the +# server will use that explicit path. If the filenames do *not* begin +# with "/", the value of ServerRoot is prepended -- so "/foo.log" +# with ServerRoot set to "/etc/httpd/httpd" will be interpreted by the +# server as "/etc/httpd/httpd//foo.log". +# -##### Global Environment +### Section 1: Global Environment +# # The directives in this section affect the overall operation of Apache, -# such as the number of concurrent requests it can handle or where it can -# find its configuration files. - -### ServerType -# is either inetd, or standalone. Inetd mode is only supported on Unix -# platforms. - -ServerType standalone - -### PidFile -# The file in which the server should record its process identification -# number when it starts. - -PidFile /var/run/httpd.pid - -### Timeout -# The number of seconds before receives and sends time out. -### KeepAliveTimeout -# Number of seconds to wait for the next request from the same client on the -# same connection. - -Timeout 300 -KeepAliveTimeout 15 - -### KeepAlive -# Whether or not to allow persistent connections (more than one request per -# connection). Set to "Off" to deactivate. -### MaxKeepAliveRequests -# The maximum number of requests to allow during a persistent connection. -# Set to 0 to allow an unlimited amount. We recommend you leave this number -# high, for maximum performance. - -KeepAlive On -MaxKeepAliveRequests 100 +# such as the number of concurrent requests it can handle or where it +# can find its configuration files. +# -### ServerRoot -# The top of the directory tree under which the server's configuration, -# error, and log files are kept. +# +# ServerRoot: The top of the directory tree under which the server's +# configuration, error, and log files are kept. # # NOTE! If you intend to place this on an NFS (or otherwise network) # mounted filesystem then please read the LockFile documentation -# (available at ); +# (available at ); # you will save yourself a lot of trouble. # # Do NOT add a slash at the end of the directory path. # ServerRoot "/usr" -### LockFile -# The LockFile directive sets the path to the lockfile used when Apache -# is compiled with either USE_FCNTL_SERIALIZED_ACCEPT or -# USE_FLOCK_SERIALIZED_ACCEPT. This directive should normally be left at -# its default value. The main reason for changing it is if the logs -# directory is NFS mounted, since the lockfile MUST BE STORED ON A LOCAL -# DISK. The PID of the main server process is automatically appended to -# the filename. # -LockFile /var/run/httpd.lock +# The accept serialization lock file MUST BE STORED ON A LOCAL DISK. +# + + +#LockFile /accept.lock + + -### ScoreBoardFile -# File used to store internal server process information. Not all -# architectures require this. But if yours does (you'll know because this -# file will be created when you run Apache) then you *must* ensure that no -# two invocations of Apache share the same scoreboard file. +# +# ScoreBoardFile: File used to store internal server process information. +# If unspecified (the default), the scoreboard will be stored in an +# anonymous shared memory segment, and will be unavailable to third-party +# applications. +# If specified, ensure that no two invocations of Apache share the same +# scoreboard file. The scoreboard file MUST BE STORED ON A LOCAL DISK. +# + + +#ScoreBoardFile /apache_runtime_status + + -ScoreBoardFile /var/run/httpd.scoreboard # -# In the standard configuration, the server will process this file, -# srm.conf, and access.conf in that order. The latter two files are -# now distributed empty, as it is recommended that all directives -# be kept in a single file for simplicity. The commented-out values -# below are the built-in defaults. You can have the server ignore -# these files altogether by using "/dev/null" (for Unix) or -# "nul" (for Win32) for the arguments to the directives. +# PidFile: The file in which the server should record its process +# identification number when it starts. # -ResourceConfig /dev/null -AccessConfig /dev/null + +PidFile /var/run/httpd.pid + # -# Server-pool size regulation. Rather than making you guess how many -# server processes you need, Apache dynamically adapts to the load it -# sees --- that is, it tries to maintain enough server processes to -# handle the current load, plus a few spare servers to handle transient -# load spikes (e.g., multiple simultaneous requests from a single -# Netscape browser). -# -# It does this by periodically checking how many servers are waiting -# for a request. If there are fewer than MinSpareServers, it creates -# a new spare. If there are more than MaxSpareServers, some of the -# spares die off. The default values are probably OK for most sites. +# Timeout: The number of seconds before receives and sends time out. # -MinSpareServers 5 -MaxSpareServers 10 +Timeout 300 # -# Number of servers to start initially --- should be a reasonable ballpark -# figure. +# KeepAlive: Whether or not to allow persistent connections (more than +# one request per connection). Set to "Off" to deactivate. # -StartServers 5 +KeepAlive On # -# Limit on total number of servers running, i.e., limit on the number -# of clients who can simultaneously connect --- if this limit is ever -# reached, clients will be LOCKED OUT, so it should NOT BE SET TOO LOW. -# It is intended mainly as a brake to keep a runaway server from taking -# the system with it as it spirals down... +# MaxKeepAliveRequests: The maximum number of requests to allow +# during a persistent connection. Set to 0 to allow an unlimited amount. +# We recommend you leave this number high, for maximum performance. # -MaxClients 150 +MaxKeepAliveRequests 100 # -# MaxRequestsPerChild: the number of requests each child process is -# allowed to process before the child dies. The child will exit so -# as to avoid problems after prolonged use when Apache (and maybe the -# libraries it uses) leak memory or other resources. On most systems, this -# isn't really needed, but a few (such as Solaris) do have notable leaks -# in the libraries. For these platforms, set to something like 10000 -# or so; a setting of 0 means unlimited. +# KeepAliveTimeout: Number of seconds to wait for the next request from the +# same client on the same connection. # -# NOTE: This value does not include keepalive requests after the initial -# request per connection. For example, if a child process handles -# an initial request and 10 subsequent "keptalive" requests, it -# would only count as 1 request towards this limit. - -MaxRequestsPerChild 30 +KeepAliveTimeout 15 -### Listen -# Allows you to bind Apache to specific IP addresses and/or ports, in -# addition to the default. See also the directive. - -#Listen 12.34.56.78:80 -Listen 80 +## +## Server-Pool Size Regulation (MPM specific) +## + +# prefork MPM +# StartServers: number of server processes to start +# MinSpareServers: minimum number of server processes which are kept spare +# MaxSpareServers: maximum number of server processes which are kept spare +# MaxClients: maximum number of server processes allowed to start +# MaxRequestsPerChild: maximum number of requests a server process serves + +StartServers 5 +MinSpareServers 5 +MaxSpareServers 10 +MaxClients 150 +MaxRequestsPerChild 0 + -# Listen can take two arguments. -# (this is an extension for supporting IPv6 addresses) -#Listen :: 80 -#Listen 0.0.0.0 80 +# worker MPM +# StartServers: initial number of server processes to start +# MaxClients: maximum number of simultaneous client connections +# MinSpareThreads: minimum number of worker threads which are kept spare +# MaxSpareThreads: maximum number of worker threads which are kept spare +# ThreadsPerChild: constant number of worker threads in each server process +# MaxRequestsPerChild: maximum number of requests a server process serves + +StartServers 2 +MaxClients 150 +MinSpareThreads 25 +MaxSpareThreads 75 +ThreadsPerChild 25 +MaxRequestsPerChild 0 + -### BindAddress -# You can support virtual hosts with this option. This directive is used to -# tell the server which IP address to listen to. It can either contain "*", -# an IP address, or a fully qualified Internet domain name. See also the -# and Listen directives. +# perchild MPM +# NumServers: constant number of server processes +# StartThreads: initial number of worker threads in each server process +# MinSpareThreads: minimum number of worker threads which are kept spare +# MaxSpareThreads: maximum number of worker threads which are kept spare +# MaxThreadsPerChild: maximum number of worker threads in each server process +# MaxRequestsPerChild: maximum number of connections per server process + +NumServers 5 +StartThreads 5 +MinSpareThreads 5 +MaxSpareThreads 10 +MaxThreadsPerChild 20 +MaxRequestsPerChild 0 + -#BindAddress * +# WinNT MPM +# ThreadsPerChild: constant number of worker threads in the server process +# MaxRequestsPerChild: maximum number of requests a server process serves + +ThreadsPerChild 250 +MaxRequestsPerChild 0 + -### ExtendedStatus -# controls whether Apache will generate "full" status information -# (ExtendedStatus On) or just basic information (ExtendedStatus Off) when -# the "server-status" handler is called. The default is Off. +# BeOS MPM +# StartThreads: how many threads do we initially spawn? +# MaxClients: max number of threads we can have (1 thread == 1 client) +# MaxRequestsPerThread: maximum number of requests each thread will process + +StartThreads 10 +MaxClients 50 +MaxRequestsPerThread 10000 + + +# NetWare MPM +# ThreadStackSize ...... Stack size allocated for each worker thread +# StartThreads ......... Number of worker threads launched at server startup +# MinSpareThreads ...... Minimum number of idle threads, to handle request spikes +# MaxSpareThreads ...... Maximum number of idle threads +# MaxThreads ........... Maximum number of worker threads alive at the same time +# MaxRequestsPerChild .. Maximum number of requests a thread serves. It is +# recommended that the default value of 0 be set for this +# directive on NetWare. This will allow the thread to +# continue to service requests indefinitely. + +ThreadStackSize 65536 +StartThreads 250 +MinSpareThreads 25 +MaxSpareThreads 250 +MaxThreads 1000 +MaxRequestsPerChild 0 + -#ExtendedStatus On +# +# Listen: Allows you to bind Apache to specific IP addresses and/or +# ports, in addition to the default. See also the +# directive. +# +# Change this to Listen on specific IP addresses as shown below to +# prevent Apache from glomming onto all bound IP addresses (0.0.0.0) +# +#Listen 12.34.56.78:80 +Listen 80 -### Section 2: Dynamic Shared Object (DSO) Support +# +# Dynamic Shared Object (DSO) Support +# +# To be able to use the functionality of a module which was built as a DSO you +# have to place corresponding `LoadModule' lines at this location so the +# directives contained in it are actually available _before_ they are used. +# Statically compiled modules (those listed by `httpd -l') do not need +# to be loaded here. # # Example: -# LoadModule foo_module libexec/mod_foo.so - -# Reconstruction of the complete module list from all available modules -# (static and shared ones) to achieve correct module execution order. -# [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE UPDATE THIS, TOO] -ClearModuleList -AddModule mod_so.c +# +# +LoadModule access_module lib/apache/mod_access.so +LoadModule alias_module lib/apache/mod_alias.so +LoadModule asis_module lib/apache/mod_asis.so +LoadModule autoindex_module lib/apache/mod_autoindex.so +LoadModule cern_meta_module lib/apache/mod_cern_meta.so +LoadModule cgi_module lib/apache/mod_cgi.so +LoadModule env_module lib/apache/mod_env.so +LoadModule include_module lib/apache/mod_include.so +LoadModule log_config_module lib/apache/mod_log_config.so +LoadModule mime_magic_module lib/apache/mod_mime_magic.so +LoadModule mime_module lib/apache/mod_mime.so +LoadModule negotiation_module lib/apache/mod_negotiation.so +LoadModule setenvif_module lib/apache/mod_setenvif.so +LoadModule speling_module lib/apache/mod_speling.so +LoadModule userdir_module lib/apache/mod_userdir.so + +# ExtendedStatus controls whether Apache will generate "full" status +# information (ExtendedStatus On) or just basic information (ExtendedStatus +# Off) when the "server-status" handler is called. The default is Off. +# +#ExtendedStatus On -### Section 3: 'Main' server configuration +### Section 2: 'Main' server configuration # # The directives in this section set up the values used by the 'main' # server, which responds to any requests that aren't handled by a @@ -180,69 +249,73 @@ AddModule mod_so.c # virtual host being defined. # -# -# If your ServerType directive (set earlier in the 'Global Environment' -# section) is set to "inetd", the next few directives don't have any -# effect since their settings are defined by the inetd configuration. -# Skip ahead to the ServerAdmin directive. -# - -# -# Port: The port to which the standalone server listens. For -# ports < 1023, you will need httpd to be run as root initially. -# -Port 80 - + + # # If you wish httpd to run as a different user or group, you must run # httpd as root initially and it will switch. # -User http +# User/Group: The name (or #number) of the user/group to run httpd as. +# . On SCO (ODT 3) use "User nouser" and "Group nogroup". +# . On HPUX you may not be able to use shared memory as nobody, and the +# suggested workaround is to create a user www and use that user. +# NOTE that some kernels refuse to setgid(Group) or semctl(IPC_SET) +# when the value of (unsigned)Group is above 60000; +# don't use Group #-1 on these systems! +# +User http Group http + + # # ServerAdmin: Your address, where problems with the server should be # e-mailed. This address appears on some server-generated pages, such -# as error documents. +# as error documents. e.g. admin@your-domain.com # -ServerAdmin admin@your_domain.org +ServerAdmin you@your.address # -# ServerName allows you to set a host name which is sent back to clients for -# your server if it's different than the one the program would get (i.e., use -# "www" instead of the host's real name). +# ServerName gives the name and port that the server uses to identify itself. +# This can often be determined automatically, but we recommend you specify +# it explicitly to prevent problems during startup. +# +# If this is not set to valid DNS name for your host, server-generated +# redirections will not work. See also the UseCanonicalName directive. # -# Note: You cannot just invent host names and hope they work. The name you -# define here must be a valid DNS name for your host. If you don't understand -# this, ask your network administrator. # If your host doesn't have a registered DNS name, enter its IP address here. -# You will have to access it by its address (e.g., http://123.45.67.89/) -# anyway, and this will make redirections work in a sensible way. +# You will have to access it by its address anyway, and this will make +# redirections work in a sensible way. # -# 127.0.0.1 is the TCP/IP local loop-back address, often named localhost. Your -# machine always knows itself by this address. If you use Apache strictly for -# local testing and development, you may use 127.0.0.1 as the server name. +#ServerName new.host.name:80 + # -#ServerName new.host.name +# UseCanonicalName: Determines how Apache constructs self-referencing +# URLs and the SERVER_NAME and SERVER_PORT variables. +# When set "Off", Apache will use the Hostname and Port supplied +# by the client. When set "On", Apache will use the value of the +# ServerName directive. +# +UseCanonicalName Off # # DocumentRoot: The directory out of which you will serve your # documents. By default, all requests are taken from this directory, but # symbolic links and aliases may be used to point to other locations. # -DocumentRoot "/home/httpd/html" +DocumentRoot "/home/services/httpd/html" # -# Each directory to which Apache has access, can be configured with respect +# Each directory to which Apache has access can be configured with respect # to which services and features are allowed and/or disabled in that # directory (and its subdirectories). # # First, we configure the "default" to be a very restrictive set of -# permissions. +# features. # - Options FollowSymLinks - AllowOverride None + Options FollowSymLinks + AllowOverride None # @@ -255,33 +328,39 @@ DocumentRoot "/home/httpd/html" # # This should be changed to whatever you set DocumentRoot to. # - + # -# This may also be "None", "All", or any combination of "Indexes", -# "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews". +# 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. # - Options Indexes FollowSymLinks MultiViews +# 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 # -# This controls which options the .htaccess files in directories can -# override. Can also be "All", or any combination of "Options", "FileInfo", -# "AuthConfig", and "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 + AllowOverride None # # Controls who can get stuff from this server. # - Order allow,deny - Allow from all + Order allow,deny + Allow from all + # -# UserDir: The name of the directory which is appended onto a user's home +# UserDir: The name of the directory that is appended onto a user's home # directory if a ~user request is received. # UserDir public_html @@ -300,60 +379,27 @@ UserDir public_html # # Order deny,allow # Deny from all -# +# # -# -# DirectoryIndex: Name of the file or files to use as a pre-written HTML -# directory index. Separate multiple entries with spaces. -# - - DirectoryIndex index.html index.htm index.shtml index.cgi index.php - - # # AccessFileName: The name of the file to look for in each directory -# for access control information. +# for access control information. See also the AllowOverride directive. # AccessFileName .htaccess # -# The following lines prevent .htaccess files from being viewed by -# Web clients. Since .htaccess files often contain authorization -# information, access is disallowed for security reasons. Comment -# these lines out if you want Web visitors to see the contents of -# .htaccess files. If you change the AccessFileName directive above, -# be sure to make the corresponding changes here. -# -# Also, folks tend to use names such as .htpasswd for password -# files, so this will protect those as well. +# The following lines prevent .htaccess and .htpasswd files from being +# viewed by Web clients. # - Order allow,deny - Deny from all + Order allow,deny + Deny from all -# -# CacheNegotiatedDocs: By default, Apache sends "Pragma: no-cache" with each -# document that was negotiated on the basis of content. This asks proxy -# servers not to cache the document. Uncommenting the following line disables -# this behavior, and proxies will be allowed to cache the documents. -# -#CacheNegotiatedDocs - -# -# UseCanonicalName: (new for 1.3) With this setting turned on, whenever -# Apache needs to construct a self-referencing URL (a URL that refers back -# to the server the response is coming from) it will use ServerName and -# Port to form a "canonical" name. With this setting off, Apache will -# use the hostname:port that the client supplied, when possible. This -# also affects SERVER_NAME and SERVER_PORT in CGI scripts. -# -UseCanonicalName On - # # TypesConfig describes where the mime.types file (or equivalent) is -# to be found. /etc/mime.types is provided by mailcap package. +# to be found. # TypesConfig /etc/mime.types @@ -372,15 +418,9 @@ DefaultType text/plain # The mod_mime_magic module allows the server to use various hints from the # contents of the file itself to determine its type. The MIMEMagicFile # directive tells the module where the hint definitions are located. -# mod_mime_magic is not part of the default server (you have to add -# it yourself with a LoadModule [see the DSO paragraph in the 'Global -# Environment' section], or recompile the server and include mod_mime_magic -# as part of the configuration), so it's enclosed in an container. -# This means that the MIMEMagicFile directive will only be processed if the -# module is part of the server. # - MIMEMagicFile /etc/httpd/magic + MIMEMagicFile /etc/httpd/magic # @@ -393,6 +433,22 @@ DefaultType text/plain # HostnameLookups Off +# +# ErrorLog: The location of the error log file. +# If you do not specify an ErrorLog directive within a +# container, error messages relating to that virtual host will be +# logged here. If you *do* define an error logfile for a +# container, that host's errors will be logged there and not here. +# +ErrorLog /var/log/httpd/error_log + +# +# LogLevel: Control the number of messages logged to the error_log. +# Possible values include: debug, info, notice, warn, error, crit, +# alert, emerg. +# +LogLevel warn + # # The following directives define some format nicknames for use with # a CustomLog directive (see below). @@ -402,14 +458,6 @@ LogFormat "%h %l %u %t \"%r\" %>s %b" common LogFormat "%{Referer}i -> %U" referer LogFormat "%{User-agent}i" agent -# -# ErrorLog: The location of the error log file. -# If you do not specify an ErrorLog directive within a -# container, error messages relating to that virtual host will be -# logged here. If you *do* define an error logfile for a -# container, that host's errors will be logged there and not here. -# -ErrorLog /var/log/httpd/error_log # # The location and format of the access logfile (Common Logfile Format). # If you do not define any access logfiles within a @@ -418,15 +466,19 @@ ErrorLog /var/log/httpd/error_log # logged therein and *not* in this file. # CustomLog /var/log/httpd/access_log common -CustomLog /var/log/httpd/referer_log referer -CustomLog /var/log/httpd/agent_log agent # -# LogLevel: Control the number of messages logged to the error_log. -# Possible values include: debug, info, notice, warn, error, crit, -# alert, emerg. +# If you would like to have agent and referer logfiles, uncomment the +# following directives. # -LogLevel warn +#CustomLog /var/log/httpd/referer_log referer +#CustomLog /var/log/httpd/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 /var/log/httpd/access_log combined # # Optionally add a line containing the server version and virtual host @@ -435,7 +487,7 @@ LogLevel warn # Set to "EMail" to also include a mailto: link to the ServerAdmin. # Set to one of: On | Off | EMail # -ServerSignature Email +ServerSignature On # # Aliases: Add here as many aliases as you need (with no limit). The format is @@ -443,15 +495,34 @@ ServerSignature Email # # 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/".. +# 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. # -Alias /icons/ "/home/httpd/icons/" +# We include the /icons/ alias for FancyIndexed directory listings. If you +# do not use FancyIndexing, you may comment this out. +# +Alias /icons/ "/home/services/httpd/icons/" + + + Options Indexes MultiViews + AllowOverride None + Order allow,deny + Allow from all + + +# +# 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 "/home/services/httpd/manual/" - - Options Indexes MultiViews - AllowOverride None - Order allow,deny - Allow from all + + Options Indexes FollowSymLinks MultiViews + AllowOverride None + Order allow,deny + Allow from all # @@ -462,34 +533,45 @@ Alias /icons/ "/home/httpd/icons/" # The same rules about trailing "/" apply to ScriptAlias directives as to # Alias. # -ScriptAlias /cgi-bin/ "/home/httpd/cgi-bin/" +ScriptAlias /cgi-bin/ "/home/services/httpd/cgi-bin/" + # -# "/home/httpd/cgi-bin" should be changed to whatever your ScriptAliased +# Additional to mod_cgid.c settings, mod_cgid has Scriptsock +# for setting UNIX socket for communicating with cgid. +# +#Scriptsock /var/run/apache/cgisock + + +# +# "/home/services/httpd/cgi-bin/" should be changed to whatever your ScriptAliased # CGI directory exists, if you have that configured. # - - AllowOverride None - Options None - Order allow,deny - Allow from all + + AllowOverride None + Options None + Order allow,deny + Allow from all # # Redirect allows you to tell clients about documents which used to exist in # your server's namespace, but do not anymore. This allows you to tell the # clients where to look for the relocated document. -# Format: Redirect old-URI new-URL -# +# Example: +# Redirect permanent /foo http://www.example.com/bar # # Directives controlling the display of server-generated directory listings. # # -# FancyIndexing is whether you want fancy directory indexing or standard +# FancyIndexing is whether you want fancy directory indexing or standard. +# VersionSort is whether files containing version numbers should be +# compared in the natural way, so that `apache-1.3.9.tar' is placed before +# `apache-1.3.12.tar'. # -IndexOptions FancyIndexing +IndexOptions FancyIndexing VersionSort # # AddIcon* directives tell the server which icon to show for different @@ -537,9 +619,9 @@ DefaultIcon /icons/unknown.gif # directories. # Format: AddDescription "description" filename # -AddDescription "GZIP compressed document" .gz -AddDescription "tar archive" .tar -AddDescription "GZIP compressed tar archive" .tgz +#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 @@ -547,14 +629,8 @@ AddDescription "GZIP compressed tar archive" .tgz # # HeaderName is the name of a file which should be prepended to # directory indexes. -# -# If MultiViews are amongst the Options in effect, the server will -# first look for name.html and include it if found. If name.html -# doesn't exist, the server will then look for name.txt and include -# it as plaintext if found. -# -ReadmeName README -HeaderName HEADER +ReadmeName README.html +HeaderName HEADER.html # # IndexIgnore is a set of filenames which directory indexing should ignore @@ -569,129 +645,186 @@ IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t # to do with the FancyIndexing customization directives above. # AddEncoding x-compress Z -AddEncoding x-gzip gz +AddEncoding x-gzip gz tgz # -# 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 -# it can understand. +# 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 quite -# some cases the two character 'Language' abbriviation is not -# identical to the two character 'Country' code for its country, +# 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. But there is 'work in progress' to fix this and get +# 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 (ee) +# Danish (da) - Dutch (nl) - English (en) - Estonian (et) # French (fr) - German (de) - Greek-Modern (el) -# Italian (it) - Korean (kr) - Norwegian (no) +# Italian (it) - Norwegian (no) - Norwegian Nynorsk (nn) - Korean (kr) # Portugese (pt) - Luxembourgeois* (ltz) # Spanish (es) - Swedish (sv) - Catalan (ca) - Czech(cz) # Polish (pl) - Brazilian Portuguese (pt-br) - Japanese (ja) -# Russian (ru) +# Russian (ru) - Croatian (hr) # -AddLanguage ca .ca -AddLanguage cz .cz AddLanguage da .dk -AddLanguage de .de +AddLanguage nl .nl AddLanguage en .en -AddLanguage el .el -AddLanguage es .es -AddLanguage et .ee +AddLanguage et .et AddLanguage fr .fr +AddLanguage de .de AddLanguage he .he +AddLanguage el .el AddLanguage it .it AddLanguage ja .ja -AddLanguage kr .kr -AddLanguage ltz .lu -AddLanguage nl .nl -AddLanguage no .no AddLanguage pl .po +AddLanguage kr .kr AddLanguage pt .pt +AddLanguage nn .nn +AddLanguage no .no AddLanguage pt-br .pt-br -AddLanguage ru .ru +AddLanguage ltz .ltz +AddLanguage ca .ca +AddLanguage es .es AddLanguage sv .se +AddLanguage cz .cz +AddLanguage ru .ru AddLanguage tw .tw - -AddCharset Big5 .Big5 .big5 -AddCharset CP866 .cp866 -AddCharset ISO-8859-2 .iso-pl -AddCharset ISO-8859-5 .iso-ru -AddCharset ISO-8859-8 .iso8859-8 -AddCharset ISO-2022-JP .his -AddCharset ISO-2022-KR .iso-kr -AddCharset KOI8-R .koi8-r -AddCharset UCS-2 .ucs2 -AddCharset UCS-4 .ucs4 -AddCharset UTF-8 .utf8 -AddCharset WINDOWS-1251 .cp-1251 +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. # -LanguagePriority en pl fr de +# 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 kr no pl pt pt-br ltz ca es sv tw # -# AddType allows you to tweak mime.types without actually editing it, or to -# make certain files to be certain types. +# 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] # -# For example, the PHP 3.x module (not part of the Apache distribution - see -# http://www.php.net) will typically use: +ForceLanguagePriority Prefer Fallback + # -#AddType application/x-httpd-php3 .php3 -#AddType application/x-httpd-php3-source .phps +# 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. # -# And for PHP 4.x, use: +AddDefaultCharset ISO-8859-2 + # -#AddType application/x-httpd-php .php -#AddType application/x-httpd-php-source .phps +# 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 # -#AddType application/x-tar .tgz +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). # -# 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 command (see below) +# See ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets +# for a list of sorts. But browsers support few. # -# If you want to use server side includes, or CGI outside -# ScriptAliased directories, uncomment the following lines. +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 + # -# To use CGI scripts: +# AddType allows you to add to or override the MIME configuration +# file mime.types for specific file types. # -AddHandler cgi-script .cgi +AddType application/x-tar .tgz # -# To use server-parsed HTML files +# 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) # -AddType text/html .shtml -AddHandler server-parsed .shtml +# To use CGI scripts outside of ScriptAliased directories: +# (You will also need to add "ExecCGI" to the "Options" directive.) +# +#AddHandler cgi-script .cgi # -# Uncomment the following line to enable Apache's send-asis HTTP file -# feature +# For files that include their own HTTP headers: # -AddHandler send-as-is asis +#AddHandler send-as-is asis # -# If you wish to use server-parsed imagemap files, use +# For server-parsed imagemap files: # -AddHandler imap-file map +#AddHandler imap-file map # -# To enable type maps, you might want to use +# 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.) +# +#AddOutputFilter INCLUDES .shtml + # # Action lets you define media types that will execute a script whenever # a matching file is called. This eliminates the need for repeated URL @@ -701,96 +834,86 @@ AddHandler type-map var # # -# MetaDir: specifies the name of the directory in which Apache can find -# meta information files. These files contain additional HTTP headers -# to include when sending the document -# -MetaDir .web - -# -# MetaSuffix: specifies the file name suffix for the file containing the -# meta information. +# Customizable error responses come in three flavors: +# 1) plain text 2) local redirects 3) external redirects # -MetaSuffix .meta - -# -# Customizable error response (Apache style) -# these come in three flavors -# -# 1) plain text -#ErrorDocument 500 "The server made a boo boo. -# n.b. the (") marks it as text, it does not get output -# -# 2) local redirects +# Some examples: +#ErrorDocument 500 "The server made a boo boo." #ErrorDocument 404 /missing.html -# to redirect to local URL /missing.html -#ErrorDocument 404 /cgi-bin/missing_handler.pl -# N.B.: You can redirect to a script or a document using server-side-includes. -# -# 3) external redirects -#ErrorDocument 402 http://some.other_server.com/subscription_info.html -# N.B.: Many of the environment variables associated with the original -# request will *not* be available to such a script. - -Alias /errordocs/ "/home/httpd/errordocs/" +#ErrorDocument 404 "/cgi-bin/missing_handler.pl" +#ErrorDocument 402 http://www.example.com/subscription_info.html +# + +# +# Putting this all together, we can Internationalize error responses. +# +# We use Alias to redirect any /error/HTTP_.html.var response to +# our collection of by-error message multi-language collections. We use +# includes to substitute the appropriate text. +# +# You can modify the messages' appearance without changing any of the +# default HTTP_.html.var files by adding the line; +# +# Alias /error/include/ "/your/include/path/" +# +# which allows you to create your own set of files by starting with the +# /etc/httpd/httpd//include/ files and +# copying them to /your/include/path/, even on a per-VirtualHost basis. +# + + + + Alias /error/ "/home/services/httpd/error/" + + + AllowOverride None + Options IncludesNoExec + AddOutputFilter Includes html + AddHandler type-map var + Order allow,deny + Allow from all + LanguagePriority en es de fr + ForceLanguagePriority Prefer Fallback + + + ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var + ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var + ErrorDocument 403 /error/HTTP_FORBIDDEN.html.var + ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var + ErrorDocument 405 /error/HTTP_METHOD_NOT_ALLOWED.html.var + ErrorDocument 408 /error/HTTP_REQUEST_TIME_OUT.html.var + ErrorDocument 410 /error/HTTP_GONE.html.var + ErrorDocument 411 /error/HTTP_LENGTH_REQUIRED.html.var + ErrorDocument 412 /error/HTTP_PRECONDITION_FAILED.html.var + ErrorDocument 413 /error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var + ErrorDocument 414 /error/HTTP_REQUEST_URI_TOO_LARGE.html.var + ErrorDocument 415 /error/HTTP_SERVICE_UNAVAILABLE.html.var + ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var + ErrorDocument 501 /error/HTTP_NOT_IMPLEMENTED.html.var + ErrorDocument 502 /error/HTTP_BAD_GATEWAY.html.var + ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var + ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var - - AllowOverride none - Options IncludesNoExec FollowSymLinks - + + -ErrorDocument 400 /errordocs/400.shtml -ErrorDocument 401 /errordocs/401.shtml -ErrorDocument 403 /errordocs/403.shtml -ErrorDocument 404 /errordocs/404.shtml -ErrorDocument 405 /errordocs/405.shtml -ErrorDocument 406 /errordocs/406.shtml -ErrorDocument 408 /errordocs/408.shtml -ErrorDocument 410 /errordocs/410.shtml -ErrorDocument 411 /errordocs/411.shtml -ErrorDocument 414 /errordocs/414.shtml -ErrorDocument 500 /errordocs/500.shtml -ErrorDocument 503 /errordocs/503.shtml - -# The following directives modify normal HTTP response behavior. -# The first directive disables keepalive for Netscape 2.x and browsers that -# spoof it. There are known problems with these browser implementations. -# The second directive is for Microsoft Internet Explorer 4.0b2 -# which has a broken HTTP/1.1 implementation and does not properly -# support keepalive when it is used on 301 or 302 (redirect) responses. +# +# 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 - -# -# The following directive disables HTTP/1.1 responses to browsers which -# are in violation of the HTTP/1.0 spec by not being able to grok a -# basic 1.1 response. -# BrowserMatch "RealPlayer 4\.0" force-response-1.0 BrowserMatch "Java/1\.0" force-response-1.0 BrowserMatch "JDK/1\.0" force-response-1.0 # -# Allow remote server configuration reports, with the URL of -# http://servername/server-info (requires that mod_info.c be loaded). -# Change the ".your_domain.com" to match your domain to enable. +# 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. # -# -# SetHandler server-info -# Order deny,allow -# Deny from all -# Allow from .your_domain.com -# +BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully +BrowserMatch "^WebDrive" redirect-carefully + -# -# There have been reports of people trying to abuse an old bug from pre-1.1 -# days. This bug involved a CGI script distributed as a part of Apache. -# By uncommenting these lines you can redirect these attacks to a logging -# script on phf.apache.org. Or, you can record them yourself, using the script -# support/phf_abuse_log.cgi. -# -# -# Deny from all -# ErrorDocument 403 http://phf.apache.org/phf_abuse_log.cgi -#