]> granicus.if.org Git - apache/blob - docs/manual/mod/mod_mime.xml.ja
xforms
[apache] / docs / manual / mod / mod_mime.xml.ja
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
3 <?xml-stylesheet type="text/xsl" href="../style/manual.ja.xsl"?>
4 <!-- English Revision: 659902:1675491 (outdated) -->
5
6 <!--
7  Licensed to the Apache Software Foundation (ASF) under one or more
8  contributor license agreements.  See the NOTICE file distributed with
9  this work for additional information regarding copyright ownership.
10  The ASF licenses this file to You under the Apache License, Version 2.0
11  (the "License"); you may not use this file except in compliance with
12  the License.  You may obtain a copy of the License at
13
14      http://www.apache.org/licenses/LICENSE-2.0
15
16  Unless required by applicable law or agreed to in writing, software
17  distributed under the License is distributed on an "AS IS" BASIS,
18  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19  See the License for the specific language governing permissions and
20  limitations under the License.
21 -->
22
23 <modulesynopsis metafile="mod_mime.xml.meta">
24
25 <name>mod_mime</name>
26 <description>リクエストされたファイルの拡張子とファイルの振る舞い
27     (ハンドラとフィルタ)、内容 (MIME タイプ、言語、文字セット、エンコーディング)
28     とを関連付ける</description>
29 <status>ベース</status>
30 <sourcefile>mod_mime.c</sourcefile>
31 <identifier>mime_module</identifier>
32
33 <summary>
34     <p>このモジュールは拡張子を使っていろいろな「メタ情報」をファイルに
35     関連付けるために使用されます。この情報はドキュメントのファイル名と
36     MIME タイプ、言語、文字セット、エンコーディングとを関連付けます。
37     この情報はブラウザに送られますし、複数のファイルの中からユーザの好みの
38     ものが選ばれるように、コンテントネゴシエーションでも使われます。
39     <a href="../content-negotiation.html">コンテントネゴシエーション</a>
40     に関する詳しい情報は <module>mod_negotiation</module>
41     をご覧下さい。</p>
42
43     <p><directive module="mod_mime">AddCharset</directive> ディレクティブ、
44     <directive module="mod_mime">AddEncoding</directive> ディレクティブ、
45     <directive module="mod_mime">AddHandler</directive> ディレクティブ、
46     <directive module="mod_mime">AddLanguage</directive> ディレクティブ、
47     <directive module="mod_mime">AddType</directive> ディレクティブはすべて、
48     ファイルの拡張子をメタ情報にマップするために使用されます。
49     それぞれ、ドキュメントの文字セット <transnote>charset</transnote>、content-encoding,
50     content-language, <glossary ref="mime-type">MIME タイプ</glossary> (content-type) を設定します。
51     <directive module="mod_mime">TypesConfig</directive> ディレクティブは拡張子を
52     MIME タイプにマップするファイルを指定するために使用されます。</p>
53
54     <p>さらに、<module>mod_mime</module> はコンテンツを作成、処理する
55     <a href="../handler.html">ハンドラ</a> と <a href="../filter.html">フィルタ</a>
56     を設定することができます。<directive
57     module="mod_mime">AddHandler</directive> ディレクティブ、<directive
58     module="mod_mime">AddOutputFilter</directive> ディレクティブ、<directive
59     module="mod_mime">AddInputFilter</directive> ディレクティブは
60     ドキュメントを扱うモジュールやスクリプトを制御します。
61     <directive module="mod_mime">MultiviewsMatch</directive> ディレクティブは
62     これらのディレクティブが指定したファイルの拡張子を
63     <module>mod_negotiation</module> が Multiviews のマッチをとるときに
64     考慮するようにできます。</p>
65
66     <p><module>mod_mime</module> はメタ情報をファイル名と関連付けますが、
67     <module>core</module> サーバにはあるコンテナ
68     (<em>たとえば</em>, <directive type="section"
69     module="core">Location</directive>, <directive type="section"
70     module="core">Directory</directive>, <directive type="section"
71     module="core">Files</directive>) の中のすべてのファイルを特定の
72     メタ情報と関連付けるディレクティブがあります。これらのディレクティブには
73     <directive
74     module="core">ForceType</directive>, <directive
75     module="core">SetHandler</directive>, <directive
76     module="core">SetInputFilter</directive>, <directive
77     module="core">SetOutputFilter</directive> があります。
78     コアのディレクティブは <module>mod_mime</module> により定義された
79     ファイル名の拡張子のマッピングすべてを上書きします。</p>
80
81     <p>ファイルのメタ情報を変えても <code>Last-Modified</code>
82     ヘッダの値は変わらないことに注意してください。ですから、
83     それらを変更した場合は、クライアントやプロキシで以前にキャッシュされた
84     コピーがそのときのヘッダとともに使われる可能性があります。
85     メタ情報 (言語、コンテントタイプ、文字セット、エンコーディング) を
86     変更したときは、すべての訪問者が正しいコンテントヘッダを
87     受け取るように、影響を受けるファイルに 'touch' コマンドを実行する
88     (最終更新日を更新する) 必要があるかもしれません。</p>
89 </summary>
90
91 <seealso><directive
92 module="mod_mime_magic">MimeMagicFile</directive></seealso>
93 <seealso><directive module="core">AddDefaultCharset</directive></seealso>
94 <seealso><directive module="core">ForceType</directive></seealso>
95 <seealso><directive module="core">DefaultType</directive></seealso>
96 <seealso><directive module="core">SetHandler</directive></seealso>
97 <seealso><directive module="core">SetInputFilter</directive></seealso>
98 <seealso><directive module="core">SetOutputFilter</directive></seealso>
99
100 <section id="multipleext"><title>複数の拡張子のあるファイル</title>
101     <p>ファイルは複数の拡張子を持つことができ、拡張子の順番は<em
102     >通常は</em>関係ありません。例えば、ファイル <code>welcome.html.fr</code>
103     がコンテントタイプは <code>text/html</code>
104     に、言語はフランス語にマップされる場合、<code>welcome.fr.html</code>
105     もまったく同じ情報にマップされます。
106     同じメタ情報にマップされる拡張子が複数あるときには、言語と
107     コンテントエンコーディングを除いて、
108     右側にあるものが使用されます。たとえば、<code>.gif</code> が <glossary
109     ref="mime-type">MIME タイプ</glossary> <code>image/gif</code> にマップされ、<code>.html</code>
110     が MIME タイプ <code>text/html</code>
111     にマップされる場合は、ファイル <code>welcome.gif.html</code> は
112     MIME タイプ <code>text/html</code> に関連付けられます。</p>
113
114     <p>リソースに複数の言語やエンコーディングを関連付けること
115     ができるため、
116     <a href="#charset-lang">言語</a>と<a href="#contentencoding"
117     >コンテントエンコーディング</a>は前のものに追加されていきます。
118     たとえば、ファイル <code>welcome.html.en.de</code> は
119     <code>Content-Language: en, de</code> と <code>Content-Type:
120     text/html</code> として送信されます。</p>
121
122     <p>複数の拡張子のあるファイルが <glossary ref="mime-type">MIME
123     タイプ</glossary>とハンドラの両方に関連付けられているときは注意する必要があります。
124     その場合、普通はリクエストがハンドラに関連付けられた
125     モジュールによって扱われることになります。たとえば、拡張子
126     <code>.imap</code> が (<module>mod_imagemap</module> の) <code>imap-file</code>
127     にマップされていて、<code>.html</code> が MIME タイプ <code>text/html</code>
128     にマップされているときは、ファイル <code>world.imap.html</code> は
129     <code>imap-file</code> ハンドラと <code>text/html</code> MIME
130     タイプに関連付けられます。ファイルが処理されるときは <code>imap-file</code>
131     ハンドラが使用されますので、そのファイルは <module>mod_imagemap</module>
132     のイメージマップファイルとして扱われることになります。</p>
133
134     <p>ファイル名のドット区切りでの最後の部分を使って、
135     特定の部分のメタデータにマッピングしたい場合は、
136     <code>Add*</code> ディレクティブは使わないでください。
137     たとえば <code>foo.html.cgi</code> を CGI スクリプトとして処理したいけれども、
138     <code>bar.cgi.html</code> は CGI スクリプトとしては処理したくない場合、
139     <code>AddHandler cgi-script .cgi</code> とする代わりに
140     次のようにしてください</p>
141
142     <example><title>Configure handler based on final extension only</title>
143     &lt;FilesMatch \.cgi$&gt;
144     <indent>
145       SetHandler cgi-script
146     </indent>
147     &lt;/FilesMatch&gt;
148     </example>
149
150 </section>
151
152 <section id="contentencoding"><title>コンテントエンコーディング</title>
153     <p>特定の <glossary ref="mime-type">MIME タイプ</glossary>
154     のファイルはインターネットでの転送を簡単にするために、
155     さらに符号化することができます。これは通常は <code>gzip</code> の
156     ような圧縮のことを指しますが、<code>pgp</code> のような暗号化や、
157     バイナリファイルを ASCII (テキスト) 形式で送るために考案された
158     UUencoding のことを指すこともあります。</p>
159
160     <p><a href="http://www.ietf.org/rfc/rfc2616.txt">HTTP/1.1 RFC</a> 
161     14.11 節では次のように記述されています。</p>
162
163     <blockquote cite="http://www.ietf.org/rfc/rfc2616.txt">
164       <p>Content-Encoding エンティティヘッダフィールドはメディアタイプの
165       修飾子として使われます。それが存在していれば、値はエンティティボディに
166       どの追加の符号化が適用されたかを示し、Content-Type ヘッダフィールドに
167       書かれているメディアタイプを得るためにどの復号機構を適用すべきか、も
168       示していることになります。Content-Encoding は主に、元のメディアタイプの
169       同一性を失うことなくドキュメントを圧縮することを可能にするために
170       使用されます。</p>
171     </blockquote>
172
173     <p>複数のファイル拡張子 (複数の拡張子については <a
174     href="#multipleext">上の節</a> を参照) 使うことで、
175     ファイルの<em>タイプ</em>や<em>エンコーディング</em>を指定することが
176     できます。</p>
177
178     <p>たとえば、Microsoft Word のドキュメントがあり、サイズを小さくするために
179     pkzip されているとします。<code>.doc</code> 拡張子が Microsoft Word の
180     ファイルタイプと関連付けられていて、<code>.zip</code> 拡張子が
181     pkzip ファイルエンコーディングと関連付けられていると、ファイル
182     <code>Resume.doc.zip</code> は pkzip された Word ドキュメントである
183     ということがわかります。</p>
184
185     <p>クライアントのブラウザにエンコーディング方法を知らせるために、
186     Apache はリソースと共に <code>Content-Encoding</code> ヘッダを
187     送ります。</p>
188
189     <example>Content-encoding: pkzip</example>
190 </section>
191
192 <section id="charset-lang"><title>文字セットと言語</title>
193     <p>ファイルタイプとファイルエンコーディングの他に重要な情報は
194     ドキュメントの書かれている言語と、どの文字セットでファイルが表示
195     されるべきか、というものです。たとえば、ドキュメントはベトナムの
196     アルファベットやキリル文字で書かれていて、そのように表示される
197     必要があるかもしれません。この情報もまた、HTTP ヘッダで
198     送信されます。</p>
199
200     <p>文字セット、言語、エンコーディング、mime タイプはすべて
201     コンテントネゴシエーション (<module>mod_negotiation</module> 参照)
202     の最中に、複数の文字セット、言語、エンコーディング、MIME タイプからなる
203     代替物があるときにどのドキュメントをクライアントに送るのかを
204     決定するときに使われます。<directive module="mod_mime">AddCharset</directive>,
205     <directive module="mod_mime">AddEncoding</directive>, <directive
206     module="mod_mime">AddLanguage</directive>,
207     <directive module="mod_mime">AddType</directive> の各ディレクティブで作成された
208     拡張子の関連付け (と <directive module="mod_mime_magic"
209     >MimeMagicFile</directive> でリストされている
210     拡張子) がこの選択に参加します。<directive module="mod_mime"
211     >AddHandler</directive>,
212     <directive module="mod_mime">AddInputFilter</directive>,
213     <directive module="mod_mime">AddOutputFilter</directive> の
214     各ディレクティブでのみ関連付けられている拡張子は
215     <directive module="mod_mime">MultiviewsMatch</directive> ディレクティブを
216     使うことでマッチの
217     処理に含めることも外すこともできます。</p>
218
219     <section id="charset"><title>Charset</title>
220       <p>さらに情報を伝えるために、Apache は文書の言語を
221       <code>Content-Language</code> ヘッダで送ることもあります。
222       また、情報を正しく表示するために使用すべき文字セットを示すために
223       <code>Conten-Type</code> ヘッダに情報を追加することもあります。</p>
224
225       <example>
226         Content-Language: en, fr<br />
227         Content-Type: text/plain; charset=ISO-8859-1
228       </example>
229
230       <p>言語の指定は二文字の短縮形で行なわれます。<code>charset</code> が
231       使用すべき文字セットの名前です。</p>
232     </section>
233 </section>
234
235 <directivesynopsis>
236 <name>AddCharset</name>
237 <description>ファイル名の拡張子を指定された文字セットにマップする</description>
238 <syntax>AddCharset <var>charset</var> <var>extension</var>
239 [<var>extension</var>] ...</syntax>
240 <contextlist><context>server config</context><context>virtual host</context>
241 <context>directory</context><context>.htaccess</context></contextlist>
242 <override>FileInfo</override>
243
244 <usage>
245     <p><directive>AddCharset</directive> ディレクティブは、
246     与えられた拡張子を指定された charset にマップします。<var>charset</var> 
247     は、拡張子 <var>extension</var> を含んでいるファイル名の 
248     <a href="http://www.iana.org/assignments/character-sets">MIME charset
249     パラメータ</a>です。新しいマッピングは既にある他のマッピングに追加され、同じ拡張子
250     <var>extension</var> のためのマッピングを上書きします。</p>
251
252     <example><title>例</title>
253       AddLanguage ja .ja<br />
254       AddCharset EUC-JP .euc<br />
255       AddCharset ISO-2022-JP .jis<br />
256       AddCharset SHIFT_JIS .sjis
257     </example>
258
259     <p>この場合、ドキュメント <code>xxxx.ja.jis</code> は charset が
260     <code>ISO-2022-JP</code> の日本語のドキュメントとして扱われます
261     (<code>xxxx.jis.ja</code> も同様)。<directive>AddCharset</directive>
262     ディレクティブは、ドキュメントが適切に解釈され表示されるように、
263     ドキュメントの charset の情報をクライアントに教えるために役に立ちます。
264     また、サーバがクライアントの charset
265     の優先度に基づいて複数のドキュメントの中からドキュメントを選ぶ<a
266     href="../content-negotiation.html"
267     >コンテントネゴシエーション</a>のためにも役に立ちます。</p>
268
269     <p>引数 <var>extension</var>は大文字小文字を区別せず、
270     最初のドットはあってもなくても構いません。
271     ファイル名は<a href="#multipleext">複数の拡張子</a>を持つことができ、
272     <var>extension</var>はそれぞれと比較されます。</p>
273 </usage>
274 <seealso><module>mod_negotiation</module></seealso>
275 <seealso><directive module="core">AddDefaultCharset</directive></seealso>
276 </directivesynopsis>
277
278 <directivesynopsis>
279 <name>AddEncoding</name>
280 <description>ファイル名の拡張子を指定されたエンコーディング
281 にマップする</description>
282 <syntax>AddEncoding <var>MIME-enc</var> <var>extension</var>
283 [<var>extension</var>] ...</syntax>
284 <contextlist><context>server config</context><context>virtual host</context>
285 <context>directory</context><context>.htaccess</context></contextlist>
286 <override>FileInfo</override>
287
288 <usage>
289     <p><directive>AddEncoding</directive> ディレクティブは、
290     与えられた拡張子を指定されたエンコーディングにマップします。
291     <var>MIME-enc</var> は、拡張子 <var>extension</var>
292     を含んだドキュメントに使用する MIME エンコーディングです。
293     この新しいマッピングは既にある他のマッピングに追加され、
294     同じ拡張子 <var>extension</var> のためのマッピングを上書きします。</p>
295
296     <example><title>例</title>
297       <code>AddEncoding x-gzip .gz<br />
298        AddEncoding x-compress .Z</code>
299     </example>
300
301     <p>これは、拡張子 <code>.gz</code> を含むファイル名が <code>x-gzip</code>
302     エンコーディングを使ってエンコードされていることと、拡張子 <code>.Z</code>
303     を含むファイル名が <code>x-compress</code>
304     でエンコードされていることを指定します。</p>
305
306     <p>古いクライアントは <code>x-zip</code> と <code>x-compress</code>
307     が返ってくることを期待しますが、標準規格ではそれぞれ
308     <code>gzip</code> と <code>compress</code>
309     と等価であることになっています。Apache
310     は、コンテントエンコーディングの比較をするときには、先頭にある
311     <code>x-</code> を無視します。Apache
312     がエンコーディング付きで応答を返すときは、クライアントが要求した形式
313     (<em>すなわち</em>、<code>x-foo</code> や <code>foo</code>)
314     を使用します。要するに、この二つのエンコーディングの場合は常に
315     <code>x-gzip</code> と <code>x-compress</code>
316     を使うべきである、ということです。<code>deflate</code>
317     のようなより新しいエンコーディングでは、<code>x-</code>
318     なしで指定してください。
319     </p>
320
321     <p>引数 <var>extension</var> は大文字小文字を区別せず、
322     最初のドットはあってもなくても構いません。
323     ファイル名は<a href="#multipleext">複数の拡張子</a>を持つことができ、
324     <var>extension</var>はそれぞれと比較されます。</p>
325 </usage>
326 </directivesynopsis>
327
328 <directivesynopsis>
329 <name>AddHandler</name>
330 <description>ファイル名の拡張子を指定されたハンドラにマップする</description>
331 <syntax>AddHandler <var>handler-name</var> <var>extension</var>
332 [<var>extension</var>] ...</syntax>
333 <contextlist><context>server config</context><context>virtual host</context>
334 <context>directory</context><context>.htaccess</context></contextlist>
335 <override>FileInfo</override>
336
337 <usage>
338     <p>拡張子 <var>extension</var> が名前にあるファイルは指定された <a
339     href="../handler.html">handler-name</a> に扱われます。
340     この新しいマッピングは既にある他のマッピングに追加され、
341     同じ拡張子 <var>extension</var>
342     のためのマッピングを上書きします。たとえば、拡張子
343     "<code>.cgi</code>" で終わるファイルを CGI
344     スクリプトとして扱いたいときは、以下の設定をします。</p>
345
346     <example>
347       AddHandler cgi-script .cgi
348     </example>
349
350     <p>これを httpd.conf ファイルに記述することで、拡張子
351     "<code>.cgi</code>" のファイルは CGI プログラムとして扱われます。
352     </p>
353
354     <p>引数 <var>extension</var> は大文字小文字を区別せず、
355     最初のドットはあってもなくても構いません。
356     ファイル名は<a href="#multipleext">複数の拡張子</a>を持つことができ、
357     <var>extension</var>はそれぞれと比較されます。</p>
358 </usage>
359 <seealso><directive module="core">SetHandler</directive></seealso>
360 </directivesynopsis>
361
362 <directivesynopsis>
363 <name>AddInputFilter</name>
364 <description>ファイルの拡張子をクライアントのリクエストを処理する
365     フィルタにマップする</description>
366 <syntax>AddInputFilter <var>filter</var>[;<var>filter</var>...]
367 <var>extension</var> [<var>extension</var>] ...</syntax>
368 <contextlist><context>server config</context><context>virtual host</context>
369 <context>directory</context><context>.htaccess</context></contextlist>
370 <override>FileInfo</override>
371 <compatibility>2.0.26 以降で使用可能</compatibility>
372
373 <usage>
374     <p><directive>AddInputFilter</directive> はファイルの拡張子
375     <var>extension</var> をクライアントのリクエストや POST がサーバに来たときに
376     処理をする<a href="../filter.html">フィルタ</a>にマップします。
377     これは、<directive module="core">SetInputFilter</directive> ディレクティブも
378     含め、他の場所で定義されているフィルタに加えられます。
379     このマッピングはすでにあるものより優先されてマージされ、
380     同じ <var>extension</var> に対する既存のマッピングを上書きします。</p>
381
382     <p>複数の<var>filter</var>を指定するときは、データを処理する順番にセミコロンで
383     繋いで書く必要があります。<var>filter</var> は大文字小文字を区別しません。</p>
384
385     <p>引数 <var>extension</var> は大文字小文字を区別せず、
386     最初のドットはあってもなくても構いません。
387     ファイル名は<a href="#multipleext">複数の拡張子</a>を持つことができ、
388     <var>extension</var>はそれぞれと比較されます。</p>
389
390 </usage>
391 <seealso><directive module="mod_mime">RemoveInputFilter</directive></seealso>
392 <seealso><directive module="core">SetInputFilter</directive></seealso>
393 </directivesynopsis>
394
395 <directivesynopsis>
396 <name>AddLanguage</name>
397 <description>ファイル名を指定された言語にマップ</description>
398 <syntax>AddLanguage <var>MIME-lang</var> <var>extension</var>
399 [<var>extension</var>] ...</syntax>
400 <contextlist><context>server config</context><context>virtual host</context>
401 <context>directory</context><context>.htaccess</context></contextlist>
402 <override>FileInfo</override>
403
404 <usage>
405     <p><directive>AddLanguage</directive> ディレクティブは、与えられた拡張子を指定された
406     content language にマップします。<var>MIME-lang</var> は、拡張子
407     <var>extension</var> を含んでいるファイル名の MIME における言語です。
408     この新しいマッピングは既にあるマッピングに追加され、同じ拡張子
409     <var>extension</var> のためのマッピングを上書きします。</p>
410
411     <example><title>例</title>
412       AddEncoding x-compress .Z<br />
413       AddLanguage en .en<br />
414       AddLanguage fr .fr
415     </example>
416
417     <p>この場合、<code>xxxx.en.Z</code> ドキュメントは compress
418     された英語のドキュメントとして扱われます (<code>xxxx.Z.en</code>
419     も同様)。content language はクライアントに通知されますが、
420     ブラウザがこの情報を使うことはおそらくありません。
421     <directive>AddLanguage</directive>
422     ディレクティブは、サーバがクライアントの言語の優先度に基づいて複数の
423     ドキュメントの中からドキュメントを選ぶ<a
424     href="../content-negotiation.html"
425     >コンテントネゴシエーション</a>のためにより役に立ちます。</p>
426
427     <p>複数の言語が同じ拡張子に割り当てられているときは、
428     最後のものが使用されます。すなわち、次のような場合、</p>
429
430     <example>
431       AddLanguage en .en<br />
432       AddLanguage en-gb .en<br />
433       AddLanguage en-us .en
434     </example>
435
436     <p>拡張子 <code>.en</code> のあるドキュメントは
437     <code>en-us</code> として扱われます。</p>
438
439     <p>引数 <var>extension</var> は大文字小文字を区別せず、
440     最初のドットはあってもなくても構いません。
441     ファイル名は<a href="#multipleext">複数の拡張子</a>を持つことができ、
442     <var>extension</var>はそれぞれと比較されます。</p>
443 </usage>
444 <seealso><module>mod_negotiation</module></seealso>
445 </directivesynopsis>
446
447 <directivesynopsis>
448 <name>AddOutputFilter</name>
449 <description>ファイル名の拡張子をサーバからの応答を処理するフィルタに
450     マップする</description>
451 <syntax>AddOutputFilter <var>filter</var>[;<var>filter</var>...]
452 <var>extension</var> [<var>extension</var>] ...</syntax>
453 <contextlist><context>server config</context><context>virtual host</context>
454 <context>directory</context><context>.htaccess</context></contextlist>
455 <override>FileInfo</override>
456 <compatibility>2.0.26 以降で使用可能</compatibility>
457
458 <usage>
459     <p><directive>AddOutputFilter</directive> ディレクティブは
460     拡張子 <var>extension</var> をサーバの応答がクライアントに送られる
461     前に処理する<a href="../filter.html">フィルタ</a>を定義します。
462     これは <directive module="core">SetOutputFilter</directive>
463     ディレクティブと <directive module="core"
464     >AddOutputFilterByType</directive> ディレクティブ
465     を含め、他の場所で定義されているフィルタに加えられます。
466     この新しいマッピングは既にあるマッピングに追加され、同じ拡張子
467     <var>extension</var> のためのマッピングを上書きします。</p>
468
469     <p>例えば、以下の設定はすべての <code>.shtml</code> ファイルを SSI で処理し、
470     その出力を <module>mod_deflate</module> を使って圧縮します。</p>
471
472     <example>
473       AddOutputFilter INCLUDES;DEFLATE shtml
474     </example>
475
476     <p>複数のフィルタを指定するときは、データを処理する順番にセミコロンで
477     繋いで書く必要があります。<var>filter</var> は大文字小文字を区別しません。</p>
478
479     <p>引数 <var>extension</var> は大文字小文字を区別せず、
480     最初のドットはあってもなくても構いません。
481     ファイル名は<a href="#multipleext">複数の拡張子</a>を持つことができ、
482     <var>extension</var>はそれぞれと比較されます。</p>
483 </usage>
484 <seealso><directive module="mod_mime">RemoveOutputFilter</directive></seealso>
485 <seealso><directive module="core">SetOutputFilter</directive></seealso>
486 </directivesynopsis>
487
488 <directivesynopsis>
489 <name>AddType</name>
490 <description>ファイル名の拡張子を指定されたコンテントタイプにマップ</description>
491 <syntax>AddType <var>MIME-type</var> <var>extension</var>
492 [<var>extension</var>] ...</syntax>
493 <contextlist><context>server config</context><context>virtual host</context>
494 <context>directory</context><context>.htaccess</context></contextlist>
495 <override>FileInfo</override>
496
497 <usage>
498     <p><directive>AddType</directive> ディレクティブは、
499     与えられた拡張子を指定されたコンテントタイプにマップします。
500     <var>MIME-type</var> は拡張子 <var>extension</var>
501     を含んだドキュメントに使用する <glossary ref="mime-type">MIME タイプ</glossary>です。
502     この新しいマッピングは既にあるマッピングに追加され、同じ拡張子
503     <var>extension</var> のためのマッピングを上書きします。
504     このディレクティブは MIME タイプファイル (<directive
505     module="mod_mime">TypesConfig</directive> ディレクティブを参照)
506     に無いマッピングを追加するために使用することができます。</p>
507
508     <example><title>例</title>
509       AddType image/gif .gif
510     </example>
511
512     <p>あるいは、ひとつのディレクティブで複数のファイル拡張子を指定する場合:</p>
513
514     <example><title>Example</title>
515       AddType image/jpeg jpeg jpg jpe
516     </example>
517
518     <note>
519       新しい MIME タイプは、<directive module="mod_mime">TypesConfig</directive>
520       ファイルを変更するのではなく、<directive>AddType</directive>
521       ディレクティブを使って追加することが推奨されています。
522     </note>
523
524     <p>引数 <var>extension</var> は大文字小文字を区別せず、
525     最初のドットはあってもなくても構いません。
526     ファイル名は<a href="#multipleext">複数の拡張子</a>を持つことができ、
527     <var>extension</var>はそれぞれと比較されます。</p>
528 </usage>
529 <seealso><directive module="core">DefaultType</directive></seealso>
530 <seealso><directive module="core">ForceType</directive></seealso>
531 </directivesynopsis>
532
533 <directivesynopsis>
534 <name>MultiviewsMatch</name>
535 <description>MultiViews でのマッチングの検索に含ませる
536 ファイルのタイプを指定する</description>
537 <syntax>MultiviewsMatch Any|NegotiatedOnly|Filters|Handlers
538 [Handlers|Filters]</syntax>
539 <default>MultiviewsMatch NegotiatedOnly</default>
540 <contextlist><context>server config</context><context>virtual host</context>
541 <context>directory</context><context>.htaccess</context></contextlist>
542 <override>FileInfo</override>
543 <compatibility>2.0.26 以降で使用可能</compatibility>
544
545 <usage>
546     <p><directive>MultiviewsMatch</directive> を使用することで、
547     <a href="mod_negotiation.html">mod_negotiation</a> の
548     Multiviews に 3 種類の異なる挙動をさせることができます。
549     Multiviews を使用すると、ファイル (例 <code>index.html</code>)
550     に対するリクエストに対して、ネゴシエーションする拡張子がベースに付いたもの
551     (<code>index.html.en</code>, <code>index.html.fr</code> や
552     <code>index.html.gz</code>)
553     をマッチさせることができます。</p>
554
555     <p><code>NegotiatedOnly</code> オプションでは、ベース名に続く拡張子全てが
556     コンテントネゴシエーションで <module>mod_mime</module>
557     が認識する拡張子 (<em>例</em> 文字セット、コンテントタイプ、言語やエンコーディング)
558     に関連付けられていなければなりません。これは副作用の最も少ない
559     最も的確な実装で、デフォルトになっています。</p>
560
561     <p>ハンドラとフィルタの両方もしくは片方と関連付けられた拡張子を含めるには、
562     <directive>MultiviewsMatch</directive> ディレクティブに <code>Handlers</code>,
563     <code>Filters</code> またはその両方のオプションをセットします。
564     もし他の条件が同じであれば、最も小さいファイルが送信されます。
565     例えば、500 文字の <code>index.html.cgi</code> と 1000 バイトの 
566     <code>index.html.pl</code> であれば、<code>.cgi</code> 
567     のファイルが優先されます。<code>.asis</code> ファイルを利用しているユーザは、
568     <code>.asis</code> ファイルが <code>asis-handler</code> に関連付けられているときには、
569     ハンドラオプションの使用を好むでしょう。</p>
570
571     <p>最後に、<module>mod_mime</module> が認識しない拡張子であろうとも、
572     どんな拡張子でもマッチさせる <code>Any</code> が使用できます。
573     この挙動は Apache 1.3 のときと同じもので、予期しない動作、例えば <code>.old</code> や
574     <code>.bak</code> ファイルといったウェブマスタが送信を意図していない
575     ファイルを送信する、といった動作を行なう可能性があります。</p>
576
577     <p>例えば次の設定では、ハンドラやフィルタが Multiviews に参加することが
578     できますし、未知のファイルは除外することができます。</p>
579
580     <example>
581       MultiviewsMatch Handlers Filters
582     </example>
583
584 </usage>
585 <seealso><directive module="core">Options</directive></seealso>
586 <seealso><module>mod_negotiation</module></seealso>
587 </directivesynopsis>
588
589 <directivesynopsis>
590 <name>DefaultLanguage</name>
591 <description>あるスコープのすべてのファイルを指定された言語に
592 設定する</description>
593 <syntax>DefaultLanguage <var>MIME-lang</var></syntax>
594 <contextlist><context>server config</context><context>virtual host</context>
595 <context>directory</context><context>.htaccess</context></contextlist>
596 <override>FileInfo</override>
597
598 <usage>
599     <p><directive>DefaultLanguage</directive> ディレクティブは、Apache
600     がディレクティブのスコープ (<em>例えば</em>、その時点の
601     <directive module="core" type="section">Directory</directive>
602     の範囲) にある、明示的な言語拡張子
603     (<directive module="mod_mime">AddLanguage</directive> で設定される
604     <code>.fr</code> や <code>.de</code>) のない全てのファイルを、指定された
605     <var>MIME-lang</var> 言語であるとみなすようにします。
606     これにより、すべてのファイル名を変えることなく、
607     ディレクトリがオランダ語のコンテントを含んでいる、
608     というようなことを指定することができます。
609     拡張子を使用して言語を指定する方法と違い、
610     <directive>DefaultLanguage</directive>
611     は一つの言語しか指定できないことに注意してください。</p>
612
613     <p><directive>DefaultLanguage</directive>
614     ディレクティブが有効でなく、ファイルに
615     <directive module="mod_mime">AddLanguage</directive>
616     で設定された言語の拡張子がないときは、
617     ファイルには言語属性がないとみなされます。</p>
618
619     <example><title>例</title>
620       DefaultLanguage en
621     </example>
622 </usage>
623 <seealso><module>mod_negotiation</module></seealso>
624 </directivesynopsis>
625
626 <directivesynopsis>
627 <name>ModMimeUsePathInfo</name>
628 <description><code>path_info</code> コンポーネントをファイル名の一部として扱うように
629 <module>mod_mime</module> に通知する</description>
630 <syntax>ModMimeUsePathInfo On|Off</syntax>
631 <default>ModMimeUsePathInfo Off</default>
632 <contextlist><context>directory</context></contextlist>
633 <compatibility>Apache 2.0.41 以降</compatibility>
634
635 <usage>
636     <p><directive>ModMimeUsePathInfo</directive> ディレクティブは、
637     <module>mod_mime</module> の持つディレクティブを
638     リクエストに適用させるために、ファイル名と <code>path_info</code> URL 
639     コンポーネントを結合させるために使用します。
640     デフォルトでは「 <code>Off</code> 」で、<code>path_info</code>
641     コンポーネントは無視されます。</p>
642
643     <p>このディレクティブは、バーチャルファイルシステムを使用している際に
644     推奨されるディレクティブです。</p>
645
646     <example><title>例</title>
647       ModMimeUsePathInfo On
648     </example>
649
650     <p><code>/bar</code> が存在して (foo.shtml は存在しない)
651     <directive>ModMimeUsePathInfo</directive> が <code>On</code> であるとして、
652     <code>/bar/foo.shtml</code> に対するリクエストを発行した場合、
653     <module>mod_mime</module> は入ってきたリクエストを
654     <code>/bar/foo.shtml</code> として扱い、
655     <code>AddOutputFileter INCLUDES .shtml</code> のようなディレクティブは
656     <code>INCLUDES</code> フィルタをリクエストに付加させます。
657     <directive>ModMimeUsePathInfo</directive> が設定されなければ、
658     <code>INCLUDES</code> フィルタは付加されません。</p>
659 </usage>
660 <seealso><directive module="core">AcceptPathInfo</directive></seealso>
661 </directivesynopsis>
662
663 <directivesynopsis>
664 <name>RemoveCharset</name>
665 <description>ファイルの拡張子に関連付けられたすべての文字セット
666 を解除する</description>
667 <syntax>RemoveCharset <var>extension</var> [<var>extension</var>]
668 ...</syntax>
669 <contextlist><context>virtual host</context><context>directory</context>
670 <context>.htaccess</context></contextlist>
671 <override>FileInfo</override>
672 <compatibility>2.0.24 以降で使用可能</compatibility>
673
674 <usage>
675     <p><directive>RemoveCharset</directive> ディレクティブ
676     は与えられた拡張子に関連付けられた文字セットを取り消します。
677     これにより、サブディレクトリにある <code>.htaccess</code>
678     ファイルが親ディレクトリやサーバの設定ファイル
679     から継承した関連付けを取り消すことができます。例えば:</p>
680
681     <p><var>extension</var> は大文字小文字を区別しません。
682     また、最初のドットはあってもなくても構いません。</p>
683
684     <example><title>例</title>
685       RemoveCharset .html .shtml
686     </example>
687 </usage>
688 </directivesynopsis>
689
690 <directivesynopsis>
691 <name>RemoveEncoding</name>
692 <description>ファイルの拡張子に関連付けられたすべてのコンテントエンコーディング
693 を解除する</description>
694 <syntax>RemoveEncoding <var>extension</var> [<var>extension</var>]
695 ...</syntax>
696 <contextlist><context>virtual host</context><context>directory</context>
697 <context>.htaccess</context></contextlist>
698 <override>FileInfo</override>
699
700 <usage>
701     <p><directive>RemoveEncoding</directive> ディレクティブは、
702     与えられた拡張子に関連付けられたエンコーディングを取り消します。
703     これにより、サブディレクトリにある <code>.htaccess</code>
704     ファイルが親ディレクトリやサーバの設定ファイルから継承した関連付けを
705     取り消すことができます。</p>
706
707     <example><title>/foo/.htaccess:</title>
708       AddEncoding x-gzip .gz<br />
709       AddType text/plain .asc<br />
710       &lt;Files *.gz.asc&gt;<br />
711       <indent>
712         RemoveEncoding .gz<br />
713       </indent>
714       &lt;/Files&gt;
715     </example>
716
717     <p>これは、<code>foo.gz</code> は gzip
718     でエンコードされていることを指定しますが、<code>foo.gz.asc</code>
719     はエンコードされていないプレーンテキストの
720     ファイルであるということを指定します。</p>
721
722     <note><title>注意</title>
723       <p><directive>RemoveEncoding</directive> は
724       <directive module="mod_mime">AddEncoding</directive>
725       ディレクティブの<em>後</em>で処理されますので、
726       同じディレクトリの設定中に両方が現れると、
727       後者の効果が打ち消される可能性があります。</p>
728     </note>
729
730     <p><var>extension</var> は大文字小文字を区別しません。
731     また、最初のドットはあってもなくても構いません。</p>
732 </usage>
733 </directivesynopsis>
734
735 <directivesynopsis>
736 <name>RemoveHandler</name>
737 <description>ファイルの拡張子に関連付けられたすべてのハンドラを
738 解除する</description>
739 <syntax>RemoveHandler <var>extension</var> [<var>extension</var>]
740 ...</syntax>
741 <contextlist><context>virtual host</context><context>directory</context>
742 <context>.htaccess</context></contextlist>
743 <override>FileInfo</override>
744
745 <usage>
746     <p><directive>RemoveHandler</directive> ディレクティブ
747     は与えられた拡張子に関連付けられたハンドラを取り消します。
748     これにより、サブディレクトリにある <code>.htaccess</code>
749     ファイルが親ディレクトリやサーバの設定ファイル
750     から継承した関連付けを取り消すことができます。たとえば:</p>
751
752     <example><title>/foo/.htaccess:</title>
753       AddHandler server-parsed .html
754     </example>
755
756     <example><title>/foo/bar/.htaccess:</title>
757       RemoveHandler .html
758     </example>
759
760     <p>これは、<code>/foo/bar</code> ディレクトリの <code>.html</code>
761     ファイルは SSI (<module>mod_include</module> モジュール参照) ではなく、
762     普通のファイルとして扱われるようにする効果があります。
763     </p>
764
765     <p><var>extension</var> は大文字小文字を区別しません。
766     また、最初のドットはあってもなくても構いません。</p>
767 </usage>
768 </directivesynopsis>
769
770 <directivesynopsis>
771 <name>RemoveInputFilter</name>
772 <description>ファイル拡張子に関連付けられた入力フィルタを解除する</description>
773 <syntax>RemoveInputFilter <var>extension</var> [<var>extension</var>]
774 ...</syntax>
775 <contextlist><context>virtual host</context><context>directory</context>
776 <context>.htaccess</context></contextlist>
777 <override>FileInfo</override>
778 <compatibility>2.0.26 以降で使用可能</compatibility>
779
780 <usage>
781     <p><directive>RemoveInputFilter</directive> ディレクティブは
782     指定されたファイル拡張子に関連付けられた入力<a
783     href="../filter.html">フィルタ</a>を解除します。
784     これを利用することで、親ディレクトリやサーバ設定ファイルから
785     継承した関連付けを サブディレクトリ内において
786     <code>.htaccess</code> ファイルで取り消すことができます。</p>
787
788     <p><var>extension</var> 引数は大文字小文字を区別しません。また、
789     最初のドットはあってもなくても構いません。</p>
790 </usage>
791 <seealso><directive module="mod_mime">AddInputFilter</directive></seealso>
792 <seealso><directive module="core">SetInputFilter</directive></seealso>
793 </directivesynopsis>
794
795 <directivesynopsis>
796 <name>RemoveLanguage</name>
797 <description>ファイル拡張子に関連付けられた言語を解除する</description>
798 <syntax>RemoveLanguage <var>extension</var> [<var>extension</var>]
799 ...</syntax>
800 <contextlist><context>virtual host</context><context>directory</context>
801 <context>.htaccess</context></contextlist>
802 <override>FileInfo</override>
803 <compatibility>2.0.24 以降で使用可能</compatibility>
804
805 <usage>
806     <p><directive>RemoveLanguage</directive> ディレクティブは
807     指定されたファイル拡張子に関連付けられた言語を解除します。
808     これを利用することで、親ディレクトリやサーバ設定ファイルから
809     継承した関連付けを サブディレクトリ内において
810     <code>.htaccess</code> ファイルで取り消すことができます。</p>
811
812     <p><var>extension</var> 引数は大文字小文字を区別しません。また、
813     最初のドットはついてもつかなくても構いません。</p>
814 </usage>
815 </directivesynopsis>
816
817 <directivesynopsis>
818 <name>RemoveOutputFilter</name>
819 <description>ファイル拡張子に関連付けられた出力フィルタを解除する</description>
820 <syntax>RemoveOutputFilter <var>extension</var> [<var>extension</var>]
821 ...</syntax>
822 <contextlist><context>virtual host</context><context>directory</context>
823 <context>.htaccess</context></contextlist>
824 <override>FileInfo</override>
825 <compatibility>2.0.26 以降でのみ使用可能</compatibility>
826
827 <usage>
828     <p><directive>RemoveOutputFilter</directive> ディレクティブは
829     指定されたファイル拡張子に関連付けられた出力<a
830     href="../filter.html">フィルタ</a>を解除します。
831     これを利用することで、親ディレクトリやサーバ設定ファイルから
832     継承した関連付けを サブディレクトリ内において
833     <code>.htaccess</code> ファイルで取り消すことができます。</p>
834
835     <p><var>extension</var> は大文字小文字を区別しません。
836     また、最初のドットはあってもなくても構いません。</p>
837
838     <example><title>例</title>
839       RemoveOutputFilter shtml
840     </example>
841 </usage>
842 <seealso><directive module="mod_mime">AddOutputFilter</directive></seealso>
843 </directivesynopsis>
844
845 <directivesynopsis>
846 <name>RemoveType</name>
847 <description>ファイルの拡張子と関連付けられたコンテントタイプを
848 解除する</description>
849 <syntax>RemoveType <var>extension</var> [<var>extension</var>]
850 ...</syntax>
851 <contextlist><context>virtual host</context><context>directory</context>
852 <context>.htaccess</context></contextlist>
853 <override>FileInfo</override>
854
855 <usage>
856     <p><directive>RemoveType</directive> ディレクティブは与えられた拡張子の
857     <glossary ref="mime-type">MIME タイプ</glossary>
858     の関連付けを取り消します。これにより、
859     サブディレクトリにある <code>.htaccess</code>
860     ファイルが親ディレクトリやサーバの設定ファイルから継承した
861     関連付けを取り消すことができます。たとえば:</p>
862
863     <example><title>/foo/.htaccess:</title>
864       RemoveType .cgi
865     </example>
866
867     <p>これは <code>/foo/</code> ディレクトリ以下の <code>.cgi</code>
868     ファイルの特別な扱いを取り消します。ファイルは <directive
869     module="core">DefaultType</directive> として扱われます。</p>
870
871     <note><title>注意</title>
872       <p><directive>RemoveType</directive> ディレクティブは
873       <directive module="mod_mime">AddType</directive> 
874       ディレクティブの<em>後</em>に処理されますので、
875       両方が同じディレクトリの設定中に現れた場合、
876       後者の効果が打ち消される可能性があります。</p>
877     </note>
878
879     <p><var>extension</var> は大文字小文字を区別しません。
880     また、最初のドットはあってもなくても構いません。</p>
881 </usage>
882 </directivesynopsis>
883
884 <directivesynopsis>
885 <name>TypesConfig</name>
886 <description><code>mime.types</code> ファイルの位置</description>
887 <syntax>TypesConfig <var>file-path</var></syntax>
888 <default>TypesConfig conf/mime.types</default>
889 <contextlist><context>server config</context></contextlist>
890
891 <usage>
892     <p><directive>TypesConfig</directive> ディレクティブは、
893     <glossary ref="mime-type">MIME タイプ</glossary>
894     設定ファイルの位置を設定します。<var>file-path</var> は
895     <directive module="core">ServerRoot</directive> からの相対パスです。
896     このファイルはファイルの拡張子からコンテントタイプへの
897     デフォルトのマッピングを設定します。
898     ほとんどの管理者は、よく使われるファイル名の拡張子を
899     IANA に登録されたコンテントタイプに関連付けている、
900     Apache の <code>mime.types</code> ファイルを使います。
901     現在の一覧は <a href=
902     "http://www.iana.org/assignments/media-types/index.html"
903     >http://www.iana.org/assignments/media-types/index.html</a>
904     で管理されています。これは、主要なメディアタイプの定義を提供して、
905     必要ところを <directive module="mod_mime">AddType</directive> で
906     上書きする、という方法で <code>httpd.conf</code> を簡略にします。
907     <code>mime.types</code> はサーバをアップグレードしたときに
908     置き換えられるかもしれないので、そのファイルを直接
909     編集しないでください。</p>
910
911     <p>ファイルは、<directive module="mod_mime">AddType</directive>
912     ディレクティブの引数と同じ形式の行で構成されます。</p>
913
914     <example>
915       <var>MIME-type</var> [<var>extension</var>] ...
916     </example>
917
918     <p>拡張子の大文字小文字は区別されません。空行やハッシュ (`#') 
919     で始まる行は無視されます。</p>
920
921     <note>
922       (1) IANA に既に登録されている、あるいは (2)
923       広く受け入れられていてプラットホーム間でファイル拡張子に衝突がない、
924       という場合でなければ、配布中の <code>mime.types</code>
925       ファイルに新たなものを登録するように
926       Apache HTTP Server Project にリクエストしないでください。
927       <code>category/x-subtype</code> のリクエストは自動的に却下されますし、
928       言語や文字セットの名前空間で既に使用されていて、衝突の可能性のある
929       2 文字の拡張子も却下されます。
930     </note>
931 </usage>
932 <seealso><module>mod_mime_magic</module></seealso>
933 </directivesynopsis>
934
935 </modulesynopsis>