mirror of
https://github.com/apache/httpd.git
synced 2025-08-26 05:42:34 +03:00
Submitted by: Ken "the rodent of unusual size" <coar@decus.org> git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@77542 13f79535-47bb-0310-9956-ffa450edef68
206 lines
8.1 KiB
HTML
206 lines
8.1 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
|
|
<HTML>
|
|
<HEAD>
|
|
<TITLE>Apache module mod_mime</TITLE>
|
|
</HEAD>
|
|
|
|
<BODY>
|
|
<!--#include virtual="header.html" -->
|
|
<H1>Module mod_mime</h1>
|
|
|
|
This module is contained in the <code>mod_mime.c</code> file, and is
|
|
compiled in by default. It provides for determining the types of files
|
|
from the filename.
|
|
|
|
<h2>Summary</h2>
|
|
This module is used to determine the mime types of documents. Some mime
|
|
types indicate special processing to be performed by the server, otherwise
|
|
the type is returned to the client so that the browser can deal with
|
|
the document appropriately.<p>
|
|
|
|
The filename of a document is treated as being composed of a basename followed
|
|
by some extensions, in the following order:
|
|
<blockquote><em>base.type.language.enc</em></blockquote>
|
|
The <em>type</em> extension sets the type of the document; types are defined
|
|
in the <A HREF="#typesconfig">TypesConfig</A> file and by the
|
|
<A HREF="#addtype">AddType</A> directive. The <em>language</em> extension
|
|
sets the language of the document, as defined by the
|
|
<A HREF="#addlanguage">AddLanguage</A> directive. Finally, the
|
|
<em>enc</em> directive sets the encoding of the document, as defined by
|
|
the <A HREF="#addencoding">AddEncoding</A> directive.
|
|
|
|
|
|
<h2> Directives</h2>
|
|
<ul>
|
|
<li><A HREF="#addencoding">AddEncoding</A>
|
|
<li><A HREF="#addhandler">AddHandler</A>
|
|
<li><A HREF="#addlanguage">AddLanguage</A>
|
|
<li><A HREF="#addtype">AddType</A>
|
|
<li><A HREF="#forcetype">ForceType</A>
|
|
<li><A HREF="#sethandler">SetHandler</A>
|
|
<li><A HREF="#typesconfig">TypesConfig</A>
|
|
</ul>
|
|
<hr>
|
|
|
|
|
|
<A name="addencoding"><h2>AddEncoding</h2></A>
|
|
<!--%plaintext <?INDEX {\tt AddEncoding} directive> -->
|
|
<strong>Syntax:</strong> AddEncoding <em>mime-enc extension extension...</em><br>
|
|
<Strong>Context:</strong> server config, virtual host, directory, .htaccess<br>
|
|
<Strong>Override:</strong> FileInfo<br>
|
|
<strong>Status:</strong> Base<br>
|
|
<strong>Module:</strong> mod_mime<p>
|
|
|
|
The AddEncoding directive adds to the list of filename extensions which
|
|
filenames may end in for the specified encoding type. <em>Mime-enc</em>
|
|
is the mime encoding to use for documents ending in <em>extension</em>.
|
|
Example:
|
|
<blockquote><code>
|
|
AddEncoding x-gzip gz<br>
|
|
AddEncoding x-compress Z
|
|
</code></blockquote>
|
|
|
|
This will cause files ending in .gz to be marked as encoded using the x-gzip
|
|
encoding, and .Z files to be marked as encoded with x-compress.<p><hr>
|
|
|
|
<h2><a name="addhandler">AddHandler</a></h2>
|
|
|
|
<strong>Syntax:</strong> <AddHandler <em>handler-name extension</em>><br>
|
|
<strong>Context:</strong> server config, virtual host, directory, .htaccess<br>
|
|
<strong>Status:</strong> Base<br>
|
|
<strong>Module:</strong> mod_mime<br>
|
|
<strong>Compatibility:</strong> AddHandler is only available in Apache
|
|
1.1 and later<p>
|
|
|
|
<p>AddHandler maps the filename extension <em>extension</em> to the
|
|
<a href="../handler.html">handler</a>
|
|
<em>handler-name</em>. For example, to activate CGI scripts
|
|
with the file extension "<code>.cgi</code>", you might use:
|
|
<pre>
|
|
AddHandler cgi-script cgi
|
|
</pre>
|
|
|
|
<p>Once that has been put into your srm.conf or httpd.conf file, any
|
|
file ending with "<code>.cgi</code>" will be treated as a CGI
|
|
program.</p>
|
|
|
|
|
|
<A name="addlanguage"><h2>AddLanguage</h2></A>
|
|
<!--%plaintext <?INDEX {\tt AddLanguage} directive> -->
|
|
<strong>Syntax:</strong> AddLanguage <em>mime-lang extension extension...</em><br>
|
|
<Strong>Context:</strong> server config, virtual host, directory, .htaccess<br>
|
|
<Strong>Override:</strong> FileInfo<br>
|
|
<strong>Status:</strong> Base<br>
|
|
<strong>Module:</strong> mod_mime<p>
|
|
|
|
The AddLanguage directive adds to the list of filename extensions which
|
|
filenames may end in for the specified content language. <em>Mime-lang</em>
|
|
is the mime language of files with names ending <em>extension</em>,
|
|
after any content encoding extensions have been removed. Example:
|
|
<blockquote><code>
|
|
AddEncoding x-compress Z<br>
|
|
AddLanguage en .en<br>
|
|
AddLanguage fr .fr<br>
|
|
</code></blockquote>
|
|
|
|
Then the document <code>xxxx.en.Z</code> will be treated as being a compressed
|
|
English document. Although the content language is reported to the client,
|
|
the browser is unlikely to use this information. The AddLanguage directive
|
|
is more useful for content negotiation, where the server returns one
|
|
from several documents based on the client's language preference.<p><hr>
|
|
|
|
<A name="addtype"><h2>AddType</h2></A>
|
|
<!--%plaintext <?INDEX {\tt AddType} directive> -->
|
|
<strong>Syntax:</strong> AddType <em>mime-type extension extension...</em><br>
|
|
<Strong>Context:</strong> server config, virtual host, directory, .htaccess<br>
|
|
<Strong>Override:</strong> FileInfo<br>
|
|
<strong>Status:</strong> Base<br>
|
|
<strong>Module:</strong> mod_mime<p>
|
|
|
|
The AddType directive adds to the list of filename extensions which
|
|
filenames may end in for the specified content type. <em>Mime-enc</em>
|
|
is the mime type to use for documents ending in <em>extension</em>.
|
|
after content-encoding and language extensions have been removed. Example:
|
|
<blockquote><code>
|
|
AddType image/gif GIF
|
|
</code></blockquote>
|
|
It is recommended that new mime types be added using the AddType directive
|
|
rather than changing the <A HREF="#typesconfig">TypesConfig</A> file.<p>
|
|
Note that, unlike the NCSA httpd, this directive cannot be used to set the
|
|
type of particular files.<p><hr>
|
|
|
|
<h2><a name="forcetype">ForceType</a></h2>
|
|
|
|
<strong>Syntax:</strong> <ForceType <em>media type</em>><br>
|
|
<strong>Context:</strong> directory, .htaccess<br>
|
|
<strong>Status:</strong> Base<br>
|
|
<strong>Module:</strong> mod_mime<br>
|
|
<strong>Compatibility:</strong> ForceType is only available in Apache
|
|
1.1 and later.<p>
|
|
|
|
<p>When placed into an <code>.htaccess</code> file or a
|
|
<code><Directory></code> or <code><Location</code> section,
|
|
this directive forces all matching files to be served
|
|
as the content type given by <em>media type</em>. For example, if you
|
|
had a directory full of GIF files, but did not want to label them all with
|
|
".gif", you might want to use:
|
|
<pre>
|
|
ForceType image/gif
|
|
</pre>
|
|
<p>Note that this will override any filename extensions that might
|
|
media type.</p>
|
|
|
|
<h2><a name="sethandler">SetHandler</a></h2>
|
|
|
|
<strong>Syntax:</strong> <SetHandler <em>handler-name</em>><br>
|
|
<strong>Context:</strong> directory, .htaccess<br>
|
|
<strong>Status:</strong> Base<br>
|
|
<strong>Module:</strong> mod_mime<br>
|
|
<strong>Compatibility:</strong> SetHandler is only available in Apache
|
|
1.1 and later.<p>
|
|
|
|
<p>When placed into an <code>.htaccess</code> file or a
|
|
<code><Directory></code> or <code><Location</code> section,
|
|
this directive forces all matching files to be parsed through the
|
|
<a href="../handler.html">handler</a>
|
|
given by <em>handler-name</em>. For example, if you had a
|
|
directory you wanted to be parsed entirely as imagemap rule files,
|
|
regardless of extension, you might put the following into an
|
|
<code>.htaccess</code> file in that directory:
|
|
<pre>
|
|
SetHandler imap-file
|
|
</pre>
|
|
|
|
<p>Another example: if you wanted to have the server display a status
|
|
report whenever a URL of <code>http://servername/status</code> was
|
|
called, you might put the following into access.conf:
|
|
<pre>
|
|
<Location /status>
|
|
SetHandler server-status
|
|
</Location>
|
|
</pre>
|
|
|
|
|
|
<A name="typesconfig"><h2>TypesConfig</h2></A>
|
|
<!--%plaintext <?INDEX {\tt TypesConfig} directive> -->
|
|
<strong>Syntax:</strong> TypesConfig <em>filename</em><br>
|
|
<strong>Default:</strong> <code>TypesConfig conf/mime.types</code><br>
|
|
<Strong>Context:</strong> server config<br>
|
|
<strong>Status:</strong> Base<br>
|
|
<strong>Module:</strong> mod_mime<p>
|
|
|
|
The TypesConfig directive sets the location of the mime types configuration
|
|
file. <em>Filename</em> is relative to the
|
|
<A HREF="#serverroot">ServerRoot</A>. This file sets the default list of
|
|
mappings from filename extensions to content types; changing this file is not
|
|
recommended. Use the <A HREF="#addtype">AddType</A> directive instead. The
|
|
file contains lines in the format of the arguments to an AddType command:
|
|
<blockquote><em>mime-type extension extension ...</em></blockquote>
|
|
The extensions are lower-cased. Blank lines, and lines beginning with a hash
|
|
character (`#') are ignored.<p>
|
|
|
|
<!--#include virtual="footer.html" -->
|
|
</BODY>
|
|
</HTML>
|
|
|