2 # Based upon the NCSA server configuration files originally by Rob McCool.
4 # This is the main Apache server configuration file. It contains the
5 # configuration directives that give the server its instructions.
6 # See <URL:http://httpd.apache.org/docs-2.0/> for detailed information about
9 # Do NOT simply read the instructions in here without understanding
10 # what they do. They're here only as hints or reminders. If you are unsure
11 # consult the online docs. You have been warned.
13 # The configuration directives are grouped into three basic sections:
14 # 1. Directives that control the operation of the Apache server process as a
15 # whole (the 'global environment').
16 # 2. Directives that define the parameters of the 'main' or 'default' server,
17 # which responds to requests that aren't handled by a virtual host.
18 # These directives also provide default values for the settings
19 # of all virtual hosts.
20 # 3. Settings for virtual hosts, which allow Web requests to be sent to
21 # different IP addresses or hostnames and have them handled by the
22 # same Apache server process.
24 # Configuration and logfile names: If the filenames you specify for many
25 # of the server's control files begin with "/" (or "drive:/" for Win32), the
26 # server will use that explicit path. If the filenames do *not* begin
27 # with "/", the value of ServerRoot is prepended -- so "/foo.log"
28 # with ServerRoot set to "/etc/httpd/httpd" will be interpreted by the
29 # server as "/etc/httpd/httpd//foo.log".
32 ### Section 1: Global Environment
34 # The directives in this section affect the overall operation of Apache,
35 # such as the number of concurrent requests it can handle or where it
36 # can find its configuration files.
40 # ServerRoot: The top of the directory tree under which the server's
41 # configuration, error, and log files are kept.
43 # NOTE! If you intend to place this on an NFS (or otherwise network)
44 # mounted filesystem then please read the LockFile documentation
45 # (available at <URL:http://httpd.apache.org/docs-2.0/mod/core.html#lockfile>);
46 # you will save yourself a lot of trouble.
48 # Do NOT add a slash at the end of the directory path.
50 ServerRoot "/etc/httpd"
53 # The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
55 <IfModule !mpm_winnt.c>
56 <IfModule !mpm_netware.c>
57 #LockFile /accept.lock
62 # ScoreBoardFile: File used to store internal server process information.
63 # If unspecified (the default), the scoreboard will be stored in an
64 # anonymous shared memory segment, and will be unavailable to third-party
66 # If specified, ensure that no two invocations of Apache share the same
67 # scoreboard file. The scoreboard file MUST BE STORED ON A LOCAL DISK.
69 <IfModule !mpm_netware.c>
70 <IfModule !perchild.c>
71 #ScoreBoardFile /apache_runtime_status
77 # PidFile: The file in which the server should record its process
78 # identification number when it starts.
80 <IfModule !mpm_netware.c>
81 PidFile /var/run/httpd.pid
85 # Timeout: The number of seconds before receives and sends time out.
90 # KeepAlive: Whether or not to allow persistent connections (more than
91 # one request per connection). Set to "Off" to deactivate.
96 # MaxKeepAliveRequests: The maximum number of requests to allow
97 # during a persistent connection. Set to 0 to allow an unlimited amount.
98 # We recommend you leave this number high, for maximum performance.
100 MaxKeepAliveRequests 100
103 # KeepAliveTimeout: Number of seconds to wait for the next request from the
104 # same client on the same connection.
109 ## Server-Pool Size Regulation (MPM specific)
113 # StartServers: number of server processes to start
114 # MinSpareServers: minimum number of server processes which are kept spare
115 # MaxSpareServers: maximum number of server processes which are kept spare
116 # MaxClients: maximum number of server processes allowed to start
117 # MaxRequestsPerChild: maximum number of requests a server process serves
123 MaxRequestsPerChild 0
127 # StartServers: initial number of server processes to start
128 # MaxClients: maximum number of simultaneous client connections
129 # MinSpareThreads: minimum number of worker threads which are kept spare
130 # MaxSpareThreads: maximum number of worker threads which are kept spare
131 # ThreadsPerChild: constant number of worker threads in each server process
132 # MaxRequestsPerChild: maximum number of requests a server process serves
139 MaxRequestsPerChild 0
143 # NumServers: constant number of server processes
144 # StartThreads: initial number of worker threads in each server process
145 # MinSpareThreads: minimum number of worker threads which are kept spare
146 # MaxSpareThreads: maximum number of worker threads which are kept spare
147 # MaxThreadsPerChild: maximum number of worker threads in each server process
148 # MaxRequestsPerChild: maximum number of connections per server process
149 <IfModule perchild.c>
154 MaxThreadsPerChild 20
155 MaxRequestsPerChild 0
159 # ThreadsPerChild: constant number of worker threads in the server process
160 # MaxRequestsPerChild: maximum number of requests a server process serves
161 <IfModule mpm_winnt.c>
163 MaxRequestsPerChild 0
167 # StartThreads: how many threads do we initially spawn?
168 # MaxClients: max number of threads we can have (1 thread == 1 client)
169 # MaxRequestsPerThread: maximum number of requests each thread will process
173 MaxRequestsPerThread 10000
177 # ThreadStackSize ...... Stack size allocated for each worker thread
178 # StartThreads ......... Number of worker threads launched at server startup
179 # MinSpareThreads ...... Minimum number of idle threads, to handle request spikes
180 # MaxSpareThreads ...... Maximum number of idle threads
181 # MaxThreads ........... Maximum number of worker threads alive at the same time
182 # MaxRequestsPerChild .. Maximum number of requests a thread serves. It is
183 # recommended that the default value of 0 be set for this
184 # directive on NetWare. This will allow the thread to
185 # continue to service requests indefinitely.
186 <IfModule mpm_netware.c>
187 ThreadStackSize 65536
192 MaxRequestsPerChild 0
196 # StartThreads ......... Number of threads each child creates
197 # MinSpareThreads ...... Minimum number of idle threads per child, to handle request spikes
198 # MaxSpareThreads ...... Maximum number of idle threads per child
199 # MaxThreadsmetuxmpm ... Maximum number of threads per child
200 # Multiplexer .......... Specify an Multiplexer Child configuration
201 # Processor ............ Specify a User and Group for a specific child process
202 # AssignUserID ......... Tie a virtual host to a specific child process
203 # ServerLimit .......... Maximum value of NumServers for this run of Apache
204 # ThreadLimit .......... Maximum worker threads in a server for this run of Apache
205 <IfModule metuxmpm.c>
209 MaxRequestsPerChild 0
210 Multiplexer "http" "http"
214 # Listen: Allows you to bind Apache to specific IP addresses and/or
215 # ports, in addition to the default. See also the <VirtualHost>
218 # Change this to Listen on specific IP addresses as shown below to
219 # prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
221 #Listen 12.34.56.78:80
225 # Dynamic Shared Object (DSO) Support
227 # To be able to use the functionality of a module which was built as a DSO you
228 # have to place corresponding `LoadModule' lines at this location so the
229 # directives contained in it are actually available _before_ they are used.
230 # Statically compiled modules (those listed by `httpd -l') do not need
236 LoadModule access_module modules/mod_access.so
237 LoadModule alias_module modules/mod_alias.so
238 LoadModule asis_module modules/mod_asis.so
239 LoadModule autoindex_module modules/mod_autoindex.so
240 LoadModule cern_meta_module modules/mod_cern_meta.so
241 LoadModule cgi_module modules/mod_cgi.so
242 LoadModule env_module modules/mod_env.so
243 LoadModule include_module modules/mod_include.so
244 LoadModule log_config_module modules/mod_log_config.so
245 LoadModule mime_magic_module modules/mod_mime_magic.so
246 LoadModule mime_module modules/mod_mime.so
247 LoadModule negotiation_module modules/mod_negotiation.so
248 LoadModule setenvif_module modules/mod_setenvif.so
249 LoadModule speling_module modules/mod_speling.so
250 LoadModule userdir_module modules/mod_userdir.so
252 # ExtendedStatus controls whether Apache will generate "full" status
253 # information (ExtendedStatus On) or just basic information (ExtendedStatus
254 # Off) when the "server-status" handler is called. The default is Off.
258 ### Section 2: 'Main' server configuration
260 # The directives in this section set up the values used by the 'main'
261 # server, which responds to any requests that aren't handled by a
262 # <VirtualHost> definition. These values also provide defaults for
263 # any <VirtualHost> containers you may define later in the file.
265 # All of these directives may appear inside <VirtualHost> containers,
266 # in which case these default settings will be overridden for the
267 # virtual host being defined.
270 <IfModule !mpm_winnt.c>
271 <IfModule !mpm_netware.c>
273 # If you wish httpd to run as a different user or group, you must run
274 # httpd as root initially and it will switch.
276 # User/Group: The name (or #number) of the user/group to run httpd as.
277 # . On SCO (ODT 3) use "User nouser" and "Group nogroup".
278 # . On HPUX you may not be able to use shared memory as nobody, and the
279 # suggested workaround is to create a user www and use that user.
280 # NOTE that some kernels refuse to setgid(Group) or semctl(IPC_SET)
281 # when the value of (unsigned)Group is above 60000;
282 # don't use Group #-1 on these systems!
290 # ServerAdmin: Your address, where problems with the server should be
291 # e-mailed. This address appears on some server-generated pages, such
292 # as error documents. e.g. admin@your-domain.com
294 ServerAdmin you@your.address
297 # ServerName gives the name and port that the server uses to identify itself.
298 # This can often be determined automatically, but we recommend you specify
299 # it explicitly to prevent problems during startup.
301 # If this is not set to valid DNS name for your host, server-generated
302 # redirections will not work. See also the UseCanonicalName directive.
304 # If your host doesn't have a registered DNS name, enter its IP address here.
305 # You will have to access it by its address anyway, and this will make
306 # redirections work in a sensible way.
308 #ServerName new.host.name:80
311 # UseCanonicalName: Determines how Apache constructs self-referencing
312 # URLs and the SERVER_NAME and SERVER_PORT variables.
313 # When set "Off", Apache will use the Hostname and Port supplied
314 # by the client. When set "On", Apache will use the value of the
315 # ServerName directive.
320 # DocumentRoot: The directory out of which you will serve your
321 # documents. By default, all requests are taken from this directory, but
322 # symbolic links and aliases may be used to point to other locations.
324 DocumentRoot "/home/services/httpd/html"
327 # Each directory to which Apache has access can be configured with respect
328 # to which services and features are allowed and/or disabled in that
329 # directory (and its subdirectories).
331 # First, we configure the "default" to be a very restrictive set of
335 Options FollowSymLinks
340 # Note that from this point forward you must specifically allow
341 # particular features to be enabled - so if something's not working as
342 # you might expect, make sure that you have specifically enabled it
347 # This should be changed to whatever you set DocumentRoot to.
349 <Directory "/home/services/httpd/html">
352 # Possible values for the Options directive are "None", "All",
353 # or any combination of:
354 # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI Multiviews
356 # Note that "MultiViews" must be named *explicitly* --- "Options All"
357 # doesn't give it to you.
359 # The Options directive is both complicated and important. Please see
360 # http://httpd.apache.org/docs-2.0/mod/core.html#options
361 # for more information.
363 Options Indexes FollowSymLinks
366 # AllowOverride controls what directives may be placed in .htaccess files.
367 # It can be "All", "None", or any combination of the keywords:
368 # Options FileInfo AuthConfig Limit
373 # Controls who can get stuff from this server.
381 # UserDir: The name of the directory that is appended onto a user's home
382 # directory if a ~user request is received.
387 # Control access to UserDir directories. The following is an example
388 # for a site where these directories are restricted to read-only.
390 #<Directory /home/*/public_html>
391 # AllowOverride FileInfo AuthConfig Limit
392 # Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
393 # <Limit GET POST OPTIONS PROPFIND>
397 # <LimitExcept GET POST OPTIONS PROPFIND>
404 # AccessFileName: The name of the file to look for in each directory
405 # for access control information. See also the AllowOverride directive.
407 AccessFileName .htaccess
410 # The following lines prevent .htaccess and .htpasswd files from being
411 # viewed by Web clients.
419 # TypesConfig describes where the mime.types file (or equivalent) is
422 TypesConfig /etc/mime.types
425 # DefaultType is the default MIME type the server will use for a document
426 # if it cannot otherwise determine one, such as from filename extensions.
427 # If your server contains mostly text or HTML documents, "text/plain" is
428 # a good value. If most of your content is binary, such as applications
429 # or images, you may want to use "application/octet-stream" instead to
430 # keep browsers from trying to display binary files as though they are
433 DefaultType text/plain
436 # The mod_mime_magic module allows the server to use various hints from the
437 # contents of the file itself to determine its type. The MIMEMagicFile
438 # directive tells the module where the hint definitions are located.
440 <IfModule mod_mime_magic.c>
441 MIMEMagicFile /etc/httpd/magic
445 # HostnameLookups: Log the names of clients or just their IP addresses
446 # e.g., www.apache.org (on) or 204.62.129.132 (off).
447 # The default is off because it'd be overall better for the net if people
448 # had to knowingly turn this feature on, since enabling it means that
449 # each client request will result in AT LEAST one lookup request to the
455 # ErrorLog: The location of the error log file.
456 # If you do not specify an ErrorLog directive within a <VirtualHost>
457 # container, error messages relating to that virtual host will be
458 # logged here. If you *do* define an error logfile for a <VirtualHost>
459 # container, that host's errors will be logged there and not here.
461 ErrorLog /var/log/httpd/error_log
464 # LogLevel: Control the number of messages logged to the error_log.
465 # Possible values include: debug, info, notice, warn, error, crit,
471 # The following directives define some format nicknames for use with
472 # a CustomLog directive (see below).
474 LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
475 LogFormat "%h %l %u %t \"%r\" %>s %b" common
476 LogFormat "%{Referer}i -> %U" referer
477 LogFormat "%{User-agent}i" agent
480 # The location and format of the access logfile (Common Logfile Format).
481 # If you do not define any access logfiles within a <VirtualHost>
482 # container, they will be logged here. Contrariwise, if you *do*
483 # define per-<VirtualHost> access logfiles, transactions will be
484 # logged therein and *not* in this file.
486 CustomLog /var/log/httpd/access_log common
489 # If you would like to have agent and referer logfiles, uncomment the
490 # following directives.
492 #CustomLog /var/log/httpd/referer_log referer
493 #CustomLog /var/log/httpd/agent_log agent
496 # If you prefer a single logfile with access, agent, and referer information
497 # (Combined Logfile Format) you can use the following directive.
499 #CustomLog /var/log/httpd/access_log combined
502 # Optionally add a line containing the server version and virtual host
503 # name to server-generated pages (error documents, FTP directory listings,
504 # mod_status and mod_info output etc., but not CGI generated documents).
505 # Set to "EMail" to also include a mailto: link to the ServerAdmin.
506 # Set to one of: On | Off | EMail
511 # Aliases: Add here as many aliases as you need (with no limit). The format is
512 # Alias fakename realname
514 # Note that if you include a trailing / on fakename then the server will
515 # require it to be present in the URL. So "/icons" isn't aliased in this
516 # example, only "/icons/". If the fakename is slash-terminated, then the
517 # realname must also be slash terminated, and if the fakename omits the
518 # trailing slash, the realname must also omit it.
520 # We include the /icons/ alias for FancyIndexed directory listings. If you
521 # do not use FancyIndexing, you may comment this out.
523 Alias /icons/ "/home/services/httpd/icons/"
525 <Directory "/home/services/httpd/icons/">
526 Options Indexes MultiViews
533 # This should be changed to the ServerRoot/manual/. The alias provides
534 # the manual, even if you choose to move your DocumentRoot. You may comment
535 # this out if you do not care for the documentation.
537 Alias /manual "/home/services/httpd/manual/"
539 <Directory "/home/services/httpd/manual/">
540 Options Indexes FollowSymLinks MultiViews
547 # ScriptAlias: This controls which directories contain server scripts.
548 # ScriptAliases are essentially the same as Aliases, except that
549 # documents in the realname directory are treated as applications and
550 # run by the server when requested rather than as documents sent to the client.
551 # The same rules about trailing "/" apply to ScriptAlias directives as to
554 ScriptAlias /cgi-bin/ "/home/services/httpd/cgi-bin/"
556 <IfModule mod_cgid.c>
558 # Additional to mod_cgid.c settings, mod_cgid has Scriptsock <path>
559 # for setting UNIX socket for communicating with cgid.
561 #Scriptsock /var/run/apache/cgisock
565 # "/home/services/httpd/cgi-bin/" should be changed to whatever your ScriptAliased
566 # CGI directory exists, if you have that configured.
568 <Directory "/home/services/httpd/cgi-bin/">
576 # Redirect allows you to tell clients about documents which used to exist in
577 # your server's namespace, but do not anymore. This allows you to tell the
578 # clients where to look for the relocated document.
580 # Redirect permanent /foo http://www.example.com/bar
583 # Directives controlling the display of server-generated directory listings.
587 # FancyIndexing is whether you want fancy directory indexing or standard.
588 # VersionSort is whether files containing version numbers should be
589 # compared in the natural way, so that `apache-1.3.9.tar' is placed before
590 # `apache-1.3.12.tar'.
592 IndexOptions FancyIndexing VersionSort
595 # AddIcon* directives tell the server which icon to show for different
596 # files or filename extensions. These are only displayed for
597 # FancyIndexed directories.
599 AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
601 AddIconByType (TXT,/icons/text.gif) text/*
602 AddIconByType (IMG,/icons/image2.gif) image/*
603 AddIconByType (SND,/icons/sound2.gif) audio/*
604 AddIconByType (VID,/icons/movie.gif) video/*
606 AddIcon /icons/binary.gif .bin .exe
607 AddIcon /icons/binhex.gif .hqx
608 AddIcon /icons/tar.gif .tar
609 AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
610 AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
611 AddIcon /icons/a.gif .ps .ai .eps
612 AddIcon /icons/layout.gif .html .shtml .htm .pdf
613 AddIcon /icons/text.gif .txt
614 AddIcon /icons/c.gif .c
615 AddIcon /icons/p.gif .pl .py
616 AddIcon /icons/f.gif .for
617 AddIcon /icons/dvi.gif .dvi
618 AddIcon /icons/uuencoded.gif .uu
619 AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
620 AddIcon /icons/tex.gif .tex
621 AddIcon /icons/bomb.gif core
623 AddIcon /icons/back.gif ..
624 AddIcon /icons/hand.right.gif README
625 AddIcon /icons/folder.gif ^^DIRECTORY^^
626 AddIcon /icons/blank.gif ^^BLANKICON^^
629 # DefaultIcon is which icon to show for files which do not have an icon
632 DefaultIcon /icons/unknown.gif
635 # AddDescription allows you to place a short description after a file in
636 # server-generated indexes. These are only displayed for FancyIndexed
638 # Format: AddDescription "description" filename
640 #AddDescription "GZIP compressed document" .gz
641 #AddDescription "tar archive" .tar
642 #AddDescription "GZIP compressed tar archive" .tgz
645 # ReadmeName is the name of the README file the server will look for by
646 # default, and append to directory listings.
648 # HeaderName is the name of a file which should be prepended to
650 ReadmeName README.html
651 HeaderName HEADER.html
654 # IndexIgnore is a set of filenames which directory indexing should ignore
655 # and not include in the listing. Shell-style wildcarding is permitted.
657 IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
660 # AddEncoding allows you to have certain browsers (Mosaic/X 2.1+) uncompress
661 # information on the fly. Note: Not all browsers support this.
662 # Despite the name similarity, the following Add* directives have nothing
663 # to do with the FancyIndexing customization directives above.
665 AddEncoding x-compress Z
666 AddEncoding x-gzip gz tgz
669 # DefaultLanguage and AddLanguage allows you to specify the language of
670 # a document. You can then use content negotiation to give a browser a
671 # file in a language the user can understand.
673 # Specify a default language. This means that all data
674 # going out without a specific language tag (see below) will
675 # be marked with this one. You probably do NOT want to set
676 # this unless you are sure it is correct for all cases.
678 # * It is generally better to not mark a page as
679 # * being a certain language than marking it with the wrong
684 # Note 1: The suffix does not have to be the same as the language
685 # keyword --- those with documents in Polish (whose net-standard
686 # language code is pl) may wish to use "AddLanguage pl .po" to
687 # avoid the ambiguity with the common suffix for perl scripts.
689 # Note 2: The example entries below illustrate that in some cases
690 # the two character 'Language' abbreviation is not identical to
691 # the two character 'Country' code for its country,
692 # E.g. 'Danmark/dk' versus 'Danish/da'.
694 # Note 3: In the case of 'ltz' we violate the RFC by using a three char
695 # specifier. There is 'work in progress' to fix this and get
696 # the reference data for rfc1766 cleaned up.
698 # Danish (da) - Dutch (nl) - English (en) - Estonian (et)
699 # French (fr) - German (de) - Greek-Modern (el)
700 # Italian (it) - Norwegian (no) - Norwegian Nynorsk (nn) - Korean (kr)
701 # Portugese (pt) - Luxembourgeois* (ltz)
702 # Spanish (es) - Swedish (sv) - Catalan (ca) - Czech(cz)
703 # Polish (pl) - Brazilian Portuguese (pt-br) - Japanese (ja)
704 # Russian (ru) - Croatian (hr)
721 AddLanguage pt-br .pt-br
729 AddLanguage zh-tw .tw
733 # LanguagePriority allows you to give precedence to some languages
734 # in case of a tie during content negotiation.
736 # Just list the languages in decreasing order of preference. We have
737 # more or less alphabetized them here. You probably want to change this.
739 LanguagePriority en da nl et fr de el it ja kr no pl pt pt-br ltz ca es sv tw
742 # ForceLanguagePriority allows you to serve a result page rather than
743 # MULTIPLE CHOICES (Prefer) [in case of a tie] or NOT ACCEPTABLE (Fallback)
744 # [in case no accepted languages matched the available variants]
746 ForceLanguagePriority Prefer Fallback
749 # Specify a default charset for all pages sent out. This is
750 # always a good idea and opens the door for future internationalisation
751 # of your web site, should you ever want it. Specifying it as
752 # a default does little harm; as the standard dictates that a page
753 # is in iso-8859-1 (latin1) unless specified otherwise i.e. you
754 # are merely stating the obvious. There are also some security
755 # reasons in browsers, related to javascript and URL parsing
756 # which encourage you to always set a default char set.
758 #AddDefaultCharset ISO-8859-2
759 AddDefaultCharset Off
762 # Commonly used filename extensions to character sets. You probably
763 # want to avoid clashes with the language extensions, unless you
764 # are good at carefully testing your setup after each change.
765 # See ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets for
766 # the official list of charset names and their respective RFCs
768 AddCharset ISO-8859-1 .iso8859-1 .latin1
769 AddCharset ISO-8859-2 .iso8859-2 .latin2 .cen
770 AddCharset ISO-8859-3 .iso8859-3 .latin3
771 AddCharset ISO-8859-4 .iso8859-4 .latin4
772 AddCharset ISO-8859-5 .iso8859-5 .latin5 .cyr .iso-ru
773 AddCharset ISO-8859-6 .iso8859-6 .latin6 .arb
774 AddCharset ISO-8859-7 .iso8859-7 .latin7 .grk
775 AddCharset ISO-8859-8 .iso8859-8 .latin8 .heb
776 AddCharset ISO-8859-9 .iso8859-9 .latin9 .trk
777 AddCharset ISO-2022-JP .iso2022-jp .jis
778 AddCharset ISO-2022-KR .iso2022-kr .kis
779 AddCharset ISO-2022-CN .iso2022-cn .cis
780 AddCharset Big5 .Big5 .big5
781 # For russian, more than one charset is used (depends on client, mostly):
782 AddCharset WINDOWS-1251 .cp-1251 .win-1251
783 AddCharset CP866 .cp866
784 AddCharset KOI8-r .koi8-r .koi8-ru
785 AddCharset KOI8-ru .koi8-uk .ua
786 AddCharset ISO-10646-UCS-2 .ucs2
787 AddCharset ISO-10646-UCS-4 .ucs4
788 AddCharset UTF-8 .utf8
790 # The set below does not map to a specific (iso) standard
791 # but works on a fairly wide range of browsers. Note that
792 # capitalization actually matters (it should not, but it
793 # does for some browsers).
795 # See ftp://ftp.isi.edu/in-notes/iana/assignments/character-sets
796 # for a list of sorts. But browsers support few.
798 AddCharset GB2312 .gb2312 .gb
799 AddCharset utf-7 .utf7
800 AddCharset utf-8 .utf8
801 AddCharset big5 .big5 .b5
802 AddCharset EUC-TW .euc-tw
803 AddCharset EUC-JP .euc-jp
804 AddCharset EUC-KR .euc-kr
805 AddCharset shift_jis .sjis
808 # AddType allows you to add to or override the MIME configuration
809 # file mime.types for specific file types.
811 AddType application/x-tar .tgz
814 # AddHandler allows you to map certain file extensions to "handlers":
815 # actions unrelated to filetype. These can be either built into the server
816 # or added with the Action directive (see below)
818 # To use CGI scripts outside of ScriptAliased directories:
819 # (You will also need to add "ExecCGI" to the "Options" directive.)
821 #AddHandler cgi-script .cgi
824 # For files that include their own HTTP headers:
826 #AddHandler send-as-is asis
829 # For server-parsed imagemap files:
831 #AddHandler imap-file map
834 # For type maps (negotiated resources):
835 # (This is enabled by default to allow the Apache "It Worked" page
836 # to be distributed in multiple languages.)
838 AddHandler type-map var
840 # Filters allow you to process content before it is sent to the client.
842 # To parse .shtml files for server-side includes (SSI):
843 # (You will also need to add "Includes" to the "Options" directive.)
845 #AddOutputFilter INCLUDES .shtml
848 # Action lets you define media types that will execute a script whenever
849 # a matching file is called. This eliminates the need for repeated URL
850 # pathnames for oft-used CGI file processors.
851 # Format: Action media/type /cgi-script/location
852 # Format: Action handler-name /cgi-script/location
856 # Customizable error responses come in three flavors:
857 # 1) plain text 2) local redirects 3) external redirects
860 #ErrorDocument 500 "The server made a boo boo."
861 #ErrorDocument 404 /missing.html
862 #ErrorDocument 404 "/cgi-bin/missing_handler.pl"
863 #ErrorDocument 402 http://www.example.com/subscription_info.html
867 # Putting this all together, we can Internationalize error responses.
869 # We use Alias to redirect any /error/HTTP_<error>.html.var response to
870 # our collection of by-error message multi-language collections. We use
871 # includes to substitute the appropriate text.
873 # You can modify the messages' appearance without changing any of the
874 # default HTTP_<error>.html.var files by adding the line;
876 # Alias /error/include/ "/your/include/path/"
878 # which allows you to create your own set of files by starting with the
879 # /etc/httpd/httpd//include/ files and
880 # copying them to /your/include/path/, even on a per-VirtualHost basis.
883 <IfModule mod_negotiation.c>
884 <IfModule mod_include.c>
885 Alias /error/ "/home/services/httpd/error/"
887 <Directory "/home/services/httpd/error/">
889 Options IncludesNoExec
890 AddOutputFilter Includes html
891 AddHandler type-map var
894 LanguagePriority en es de fr
895 ForceLanguagePriority Prefer Fallback
898 ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var
899 ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var
900 ErrorDocument 403 /error/HTTP_FORBIDDEN.html.var
901 ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var
902 ErrorDocument 405 /error/HTTP_METHOD_NOT_ALLOWED.html.var
903 ErrorDocument 408 /error/HTTP_REQUEST_TIME_OUT.html.var
904 ErrorDocument 410 /error/HTTP_GONE.html.var
905 ErrorDocument 411 /error/HTTP_LENGTH_REQUIRED.html.var
906 ErrorDocument 412 /error/HTTP_PRECONDITION_FAILED.html.var
907 ErrorDocument 413 /error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var
908 ErrorDocument 414 /error/HTTP_REQUEST_URI_TOO_LARGE.html.var
909 ErrorDocument 415 /error/HTTP_SERVICE_UNAVAILABLE.html.var
910 ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var
911 ErrorDocument 501 /error/HTTP_NOT_IMPLEMENTED.html.var
912 ErrorDocument 502 /error/HTTP_BAD_GATEWAY.html.var
913 ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var
914 ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var
920 # The following directives modify normal HTTP response behavior to
921 # handle known problems with browser implementations.
923 BrowserMatch "Mozilla/2" nokeepalive
924 BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
925 BrowserMatch "RealPlayer 4\.0" force-response-1.0
926 BrowserMatch "Java/1\.0" force-response-1.0
927 BrowserMatch "JDK/1\.0" force-response-1.0
930 # The following directive disables redirects on non-GET requests for
931 # a directory that does not include the trailing slash. This fixes a
932 # problem with Microsoft WebFolders which does not appropriately handle
933 # redirects for folders with DAV methods.
935 BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
936 BrowserMatch "^WebDrive" redirect-carefully