1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"><head><!--
4        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5              This file is generated from xml source: DO NOT EDIT
6        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7      -->
8<title>core - Apache HTTP サーバ</title>
9<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11<link href="/style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="/style/css/prettify.css" />
12<script src="/style/scripts/prettify.js" type="text/javascript">
13</script>
14
15<link href="/images/favicon.ico" rel="shortcut icon" /></head>
16<body>
17<div id="page-header">
18<p class="menu"><a href="/mod/">モジュール</a> | <a href="/mod/directives.html">ディレクティブ</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="/glossary.html">用語</a> | <a href="/sitemap.html">サイトマップ</a></p>
19<p class="apache">Apache HTTP サーバ バージョン 2.2</p>
20<img alt="" src="/images/feather.gif" /></div>
21<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="/images/left.gif" /></a></div>
22<div id="path">
23<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP サーバ</a> &gt; <a href="http://httpd.apache.org/docs/">ドキュメンテーション</a> &gt; <a href="../">バージョン 2.2</a> &gt; <a href="./">モジュール</a></div>
24<div id="page-content">
25<div id="preamble"><h1>Apache コア機能</h1>
26<div class="toplang">
27<p><span>翻訳済み言語: </span><a href="/de/mod/core.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
28<a href="/en/mod/core.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
29<a href="/fr/mod/core.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
30<a href="/ja/mod/core.html" title="Japanese">&nbsp;ja&nbsp;</a> |
31<a href="/tr/mod/core.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
32</div>
33<div class="outofdate">この日本語訳はすでに古くなっている
34            可能性があります。
35            最近更新された内容を見るには英語版をご覧下さい。
36        </div>
37<table class="module"><tr><th><a href="module-dict.html#Description">説明:</a></th><td>常に使用可能な Apache HTTP サーバのコア機能</td></tr>
38<tr><th><a href="module-dict.html#Status">ステータス:</a></th><td>Core</td></tr></table>
39</div>
40<div id="quickview"><h3 class="directives">ディレクティブ</h3>
41<ul id="toc">
42<li><img alt="" src="/images/down.gif" /> <a href="#acceptfilter">AcceptFilter</a></li>
43<li><img alt="" src="/images/down.gif" /> <a href="#acceptpathinfo">AcceptPathInfo</a></li>
44<li><img alt="" src="/images/down.gif" /> <a href="#accessfilename">AccessFileName</a></li>
45<li><img alt="" src="/images/down.gif" /> <a href="#adddefaultcharset">AddDefaultCharset</a></li>
46<li><img alt="" src="/images/down.gif" /> <a href="#addoutputfilterbytype">AddOutputFilterByType</a></li>
47<li><img alt="" src="/images/down.gif" /> <a href="#allowencodedslashes">AllowEncodedSlashes</a></li>
48<li><img alt="" src="/images/down.gif" /> <a href="#allowoverride">AllowOverride</a></li>
49<li><img alt="" src="/images/down.gif" /> <a href="#authname">AuthName</a></li>
50<li><img alt="" src="/images/down.gif" /> <a href="#authtype">AuthType</a></li>
51<li><img alt="" src="/images/down.gif" /> <a href="#cgimapextension">CGIMapExtension</a></li>
52<li><img alt="" src="/images/down.gif" /> <a href="#contentdigest">ContentDigest</a></li>
53<li><img alt="" src="/images/down.gif" /> <a href="#defaulttype">DefaultType</a></li>
54<li><img alt="" src="/images/down.gif" /> <a href="#directory">&lt;Directory&gt;</a></li>
55<li><img alt="" src="/images/down.gif" /> <a href="#directorymatch">&lt;DirectoryMatch&gt;</a></li>
56<li><img alt="" src="/images/down.gif" /> <a href="#documentroot">DocumentRoot</a></li>
57<li><img alt="" src="/images/down.gif" /> <a href="#enablemmap">EnableMMAP</a></li>
58<li><img alt="" src="/images/down.gif" /> <a href="#enablesendfile">EnableSendfile</a></li>
59<li><img alt="" src="/images/down.gif" /> <a href="#errordocument">ErrorDocument</a></li>
60<li><img alt="" src="/images/down.gif" /> <a href="#errorlog">ErrorLog</a></li>
61<li><img alt="" src="/images/down.gif" /> <a href="#fileetag">FileETag</a></li>
62<li><img alt="" src="/images/down.gif" /> <a href="#files">&lt;Files&gt;</a></li>
63<li><img alt="" src="/images/down.gif" /> <a href="#filesmatch">&lt;FilesMatch&gt;</a></li>
64<li><img alt="" src="/images/down.gif" /> <a href="#forcetype">ForceType</a></li>
65<li><img alt="" src="/images/down.gif" /> <a href="#gprofdir">GprofDir</a></li>
66<li><img alt="" src="/images/down.gif" /> <a href="#hostnamelookups">HostnameLookups</a></li>
67<li><img alt="" src="/images/down.gif" /> <a href="#ifdefine">&lt;IfDefine&gt;</a></li>
68<li><img alt="" src="/images/down.gif" /> <a href="#ifmodule">&lt;IfModule&gt;</a></li>
69<li><img alt="" src="/images/down.gif" /> <a href="#include">Include</a></li>
70<li><img alt="" src="/images/down.gif" /> <a href="#keepalive">KeepAlive</a></li>
71<li><img alt="" src="/images/down.gif" /> <a href="#keepalivetimeout">KeepAliveTimeout</a></li>
72<li><img alt="" src="/images/down.gif" /> <a href="#limit">&lt;Limit&gt;</a></li>
73<li><img alt="" src="/images/down.gif" /> <a href="#limitexcept">&lt;LimitExcept&gt;</a></li>
74<li><img alt="" src="/images/down.gif" /> <a href="#limitinternalrecursion">LimitInternalRecursion</a></li>
75<li><img alt="" src="/images/down.gif" /> <a href="#limitrequestbody">LimitRequestBody</a></li>
76<li><img alt="" src="/images/down.gif" /> <a href="#limitrequestfields">LimitRequestFields</a></li>
77<li><img alt="" src="/images/down.gif" /> <a href="#limitrequestfieldsize">LimitRequestFieldSize</a></li>
78<li><img alt="" src="/images/down.gif" /> <a href="#limitrequestline">LimitRequestLine</a></li>
79<li><img alt="" src="/images/down.gif" /> <a href="#limitxmlrequestbody">LimitXMLRequestBody</a></li>
80<li><img alt="" src="/images/down.gif" /> <a href="#location">&lt;Location&gt;</a></li>
81<li><img alt="" src="/images/down.gif" /> <a href="#locationmatch">&lt;LocationMatch&gt;</a></li>
82<li><img alt="" src="/images/down.gif" /> <a href="#loglevel">LogLevel</a></li>
83<li><img alt="" src="/images/down.gif" /> <a href="#maxkeepaliverequests">MaxKeepAliveRequests</a></li>
84<li><img alt="" src="/images/down.gif" /> <a href="#maxranges">MaxRanges</a></li>
85<li><img alt="" src="/images/down.gif" /> <a href="#namevirtualhost">NameVirtualHost</a></li>
86<li><img alt="" src="/images/down.gif" /> <a href="#options">Options</a></li>
87<li><img alt="" src="/images/down.gif" /> <a href="#protocol">Protocol</a></li>
88<li><img alt="" src="/images/down.gif" /> <a href="#require">Require</a></li>
89<li><img alt="" src="/images/down.gif" /> <a href="#rlimitcpu">RLimitCPU</a></li>
90<li><img alt="" src="/images/down.gif" /> <a href="#rlimitmem">RLimitMEM</a></li>
91<li><img alt="" src="/images/down.gif" /> <a href="#rlimitnproc">RLimitNPROC</a></li>
92<li><img alt="" src="/images/down.gif" /> <a href="#satisfy">Satisfy</a></li>
93<li><img alt="" src="/images/down.gif" /> <a href="#scriptinterpretersource">ScriptInterpreterSource</a></li>
94<li><img alt="" src="/images/down.gif" /> <a href="#serveradmin">ServerAdmin</a></li>
95<li><img alt="" src="/images/down.gif" /> <a href="#serveralias">ServerAlias</a></li>
96<li><img alt="" src="/images/down.gif" /> <a href="#servername">ServerName</a></li>
97<li><img alt="" src="/images/down.gif" /> <a href="#serverpath">ServerPath</a></li>
98<li><img alt="" src="/images/down.gif" /> <a href="#serverroot">ServerRoot</a></li>
99<li><img alt="" src="/images/down.gif" /> <a href="#serversignature">ServerSignature</a></li>
100<li><img alt="" src="/images/down.gif" /> <a href="#servertokens">ServerTokens</a></li>
101<li><img alt="" src="/images/down.gif" /> <a href="#sethandler">SetHandler</a></li>
102<li><img alt="" src="/images/down.gif" /> <a href="#setinputfilter">SetInputFilter</a></li>
103<li><img alt="" src="/images/down.gif" /> <a href="#setoutputfilter">SetOutputFilter</a></li>
104<li><img alt="" src="/images/down.gif" /> <a href="#suexec">Suexec</a></li>
105<li><img alt="" src="/images/down.gif" /> <a href="#timeout">TimeOut</a></li>
106<li><img alt="" src="/images/down.gif" /> <a href="#traceenable">TraceEnable</a></li>
107<li><img alt="" src="/images/down.gif" /> <a href="#usecanonicalname">UseCanonicalName</a></li>
108<li><img alt="" src="/images/down.gif" /> <a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></li>
109<li><img alt="" src="/images/down.gif" /> <a href="#virtualhost">&lt;VirtualHost&gt;</a></li>
110</ul>
111<ul class="seealso"><li><a href="#comments_section">コメント</a></li></ul></div>
112
113<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
114<div class="directive-section"><h2><a name="AcceptFilter" id="AcceptFilter">AcceptFilter</a> <a name="acceptfilter" id="acceptfilter">ディレクティブ</a></h2>
115<table class="directive">
116<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>プロトコルを Listen しているソケットの最適化を設定する</td></tr>
117<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AcceptFilter <var>protocol</var> <var>accept_filter</var></code></td></tr>
118<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
119<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
120<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
121<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>2.1.5 以降</td></tr>
122</table>
123    <p>Listen しているソケットに対して、OS が固有に持っているプロトコルについての最適化を
124       有効にするディレクティブです。大前提となる条件は、データが受信されるか
125       HTTP リクエスト全体がバッファされるかするまで、カーネルがサーバプロセスに
126       ソケットを送らないようになっている、ということです。現在サポートされているのは、
127       <a href="http://www.freebsd.org/cgi/man.cgi?query=accept_filter&sektion=9">
128       FreeBSD の Accept Filter</a> と Linux のプリミティブな
129       <code>TCP_DEFER_ACCEPT</code> のみです。</p>
130
131    <p>FreeBSD のデフォルト値は :</p>
132    <div class="example"><p><code>
133        AcceptFilter http httpready <br />
134        AcceptFilter https dataready
135    </code></p></div>
136    
137    <p><code>httpready</code> Accept Filter は HTTP リクエスト全体を、
138       カーネルレベルでバッファリングします。リクエスト全体を受信し終わると、
139       その後サーバプロセスにそれを送ります。詳細については <a href="http://www.freebsd.org/cgi/man.cgi?query=accf_http&sektion=9">accf_http(9)</a> 
140       を参照してください。HTTPS のリクエストは暗号化されているので <a href="http://www.freebsd.org/cgi/man.cgi?query=accf_data&sektion=9">accf_data(9)</a>
141       フィルタのみが使用されます。</p>
142
143    <p>Linux でのデフォルト値は :</p>
144    <div class="example"><p><code>
145        AcceptFilter http data <br />
146        AcceptFilter https data
147    </code></p></div>
148
149    <p>Linux の <code>TCP_DEFER_ACCEPT</code> は HTTP リクエストのバッファリングを
150       サポートしていません。<code>none</code> 以外の値で
151       <code>TCP_DEFER_ACCEPT</code> が有効になります。詳細については Linux 
152       man ページ <a href="http://homepages.cwi.nl/~aeb/linux/man2html/man7/tcp.7.html">tcp(7)</a>
153       を参照してください。</p>
154
155    <p>引数に <code>none</code> を指定すると、プロトコルに対する全ての Accept 
156       Filter が無効になります。<code>nntp</code> といった、先にサーバにデータを
157       送る必要のあるプロトコルに有効です :</p>
158    <div class="example"><p><code>AcceptFilter nntp none</code></p></div>
159
160
161</div>
162<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
163<div class="directive-section"><h2><a name="AcceptPathInfo" id="AcceptPathInfo">AcceptPathInfo</a> <a name="acceptpathinfo" id="acceptpathinfo">ディレクティブ</a></h2>
164<table class="directive">
165<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>後に続くパス名情報を受け付けるリソースの指定</td></tr>
166<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AcceptPathInfo On|Off|Default</code></td></tr>
167<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>AcceptPathInfo Default</code></td></tr>
168<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
169<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
170<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
171<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
172<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0.30 以降で使用可能</td></tr>
173</table>
174
175    <p>このディレクティブは実際のファイル名 (もしくは存在するディレクトリの
176    存在しないファイル) の後に続くパス名情報があるリクエストを受け付けるか
177    拒否するかを制御します。続きのパス名情報はスクリプトには <code>PATH_INFO</code>
178    環境変数として利用可能になります。</p>
179
180    <p>例えば、<code>/test/</code> が、<code>here.html</code> というファイル
181    一つのみがあるディレクトリを指しているとします。そうすると、
182    <code>/test/here.html/more</code> と <code>/test/nothere.html/more</code>
183    へのリクエストは両方とも <code>/more</code> を <code>PATH_INFO</code> とします。</p>
184
185    <p><code class="directive">AcceptPathInfo</code> ディレクティブに指定可能な
186    三つの引数は:</p>
187
188    <dl>
189    <dt><code>Off</code></dt><dd>リクエストは存在するパスにそのまま
190    マップされる場合にのみ受け付けられます。ですから、上の例の
191    <code>/test/here.html/more</code> のように、本当のファイル名の
192    後にパス名情報が続くリクエストには 404 NOT FOUND エラーが返ります。</dd>
193
194    <dt><code>On</code></dt><dd>前の方のパスが存在するファイルにマップする場合は
195    リクエストが受け付けられます。上の例の <code>/test/here.html/more</code>
196    は <code>/test/here.html</code> が有効なファイルにマップすれば
197    受け付けられます。</dd>
198    
199    <dt><code>Default</code></dt><dd>続きのパス名情報の扱いはリクエストの
200    <a href="/handler.html">ハンドラ</a>で決まります。
201    普通のファイルのためのコアハンドラのデフォルトは <code>PATH_INFO</code> を拒否します。
202    <a href="mod_cgi.html">cgi-script</a> や <a href="mod_isapi.html">isapi-handler</a> のようにスクリプトを扱うハンドラは
203    一般的にデフォルトで <code>PATH_INFO</code> を受け付けます。</dd>
204    </dl>
205
206    <p><code>AcceptPathInfo</code> の主な目的はハンドラの <code>PATH_INFO</code> を
207    受け付けるか拒否するかの選択を上書きできるようにすることです。
208    例えば、これは例えば <a href="mod_include.html">INCLUDES</a> のような
209    <a href="/filter.html">フィルタ</a>を使って <code>PATH_INFO</code> に
210    基づいてコンテンツを生成しているときに必要になります。
211    コアハンドラでは通常拒否されるので、そういったスクリプトを動作させるには
212    次のような設定を使います。</p>
213
214    <div class="example"><p><code>
215      &lt;Files "mypaths.shtml"&gt;<br />
216      <span class="indent">
217        Options +Includes<br />
218        SetOutputFilter INCLUDES<br />
219        AcceptPathInfo On<br />
220      </span>
221      &lt;/Files&gt;
222    </code></p></div>
223
224</div>
225<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
226<div class="directive-section"><h2><a name="AccessFileName" id="AccessFileName">AccessFileName</a> <a name="accessfilename" id="accessfilename">ディレクティブ</a></h2>
227<table class="directive">
228<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>分散設定ファイルの名前</td></tr>
229<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AccessFileName <var>filename</var> [<var>filename</var>] ...</code></td></tr>
230<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>AccessFileName .htaccess</code></td></tr>
231<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
232<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
233<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
234</table>
235    <p>リクエストを処理するとき、サーバはディレクトリに
236    対して分散設定ファイルが<a href="#allowoverride">有効になっていれば</a>、
237    そのドキュメントへの
238    パス上にある全てのディレクトリから、ここで指定された名前の一覧の中で
239    最初に見つかったファイルをそれぞれ設定ファイルとして読み込みます。例えば:</p>
240
241    <div class="example"><p><code>
242      AccessFileName .acl
243    </code></p></div>
244
245    <p>という設定があると、以下のようにして無効にされていない限り、
246    ドキュメント <code>/usr/local/web/index.html</code>
247    を返す前に、サーバは <code>/.acl</code>, <code>/usr/.acl</code>,
248    <code>/usr/local/.acl</code>, <code>/usr/local/web/.acl</code> から
249    ディレクティブを読み込みます。</p>
250
251    <div class="example"><p><code>
252      &lt;Directory /&gt;<br />
253      <span class="indent">
254        AllowOverride None<br />
255      </span>
256      &lt;/Directory&gt;
257    </code></p></div>
258
259<h3>参照</h3>
260<ul>
261<li><code class="directive"><a href="#allowoverride">AllowOverride</a></code></li>
262<li><a href="/configuring.html">設定ファイル</a></li>
263<li><a href="/howto/htaccess.html">.htaccess ファイル</a></li>
264</ul>
265</div>
266<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
267<div class="directive-section"><h2><a name="AddDefaultCharset" id="AddDefaultCharset">AddDefaultCharset</a> <a name="adddefaultcharset" id="adddefaultcharset">ディレクティブ</a></h2>
268<table class="directive">
269<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>レスポンスのコンテントタイプが <code>text/plain</code> あるいは
270<code>text/html</code> の場合に追加するデフォルトの charset パラメータ</td></tr>
271<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AddDefaultCharset On|Off|<var>charset</var></code></td></tr>
272<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>AddDefaultCharset Off</code></td></tr>
273<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
274<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
275<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
276<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
277</table>
278    <p>レスポンスのコンテントタイプが <code>text/plain</code> 
279    あるいは <code>text/html</code> 
280    の場合に限りますが、レスポンスに追加するメディアタイプの文字セットパラメータ
281    (文字エンコーディングの名前) のデフォルト値を、このディレクティブで指定します。
282    これはレスポンス <span class="transnote">(<em>訳注:</em> レスポンスの HTML)</span> 内で <code>META</code> 
283    要素で指定された、どのような文字セットも無効にしますが、
284    最終的な挙動はユーザのクライアント側の設定で決まります。
285    この機能は <code>AddDefaultCharset Off</code> という設定で無効になります。
286    <code>AddDefaultCharset On</code> にすれば、
287    Apache 内部のデフォルト文字セット <code>iso-8859-1</code> に設定されます。
288    その他 <var>charset</var> に指定できる値であれば、どんな値でも使えます。
289    指定する値は、MIME メディアタイプとして使われる
290    <a href="http://www.iana.org/assignments/character-sets">IANA 
291    に登録されている文字セット名</a>のうちの一つにすべきです。
292    例えば:</p>
293
294    <div class="example"><p><code>
295      AddDefaultCharset utf-8
296    </code></p></div>
297
298    <p><code class="directive">AddDefaultCharset</code> を使うときは、全てのテキストリソースが
299    指定する文字エンコードになっていると分かっていて、かつ、
300    リソースの個々に文字セットを指定するのが大変な場合のみです。
301    例を挙げると、レガシーな CGI スクリプトなどの、動的に生成される
302    コンテンツを含むリソースに文字セットパラメータを追加する場合で、
303    ユーザの入力データが出力に入り、クロスサイトスクリプティングが
304    引き起こされうる場合です。デフォルト文字セットをセットしたとしても、
305    ブラウザの "文字エンコードの自動選択" 機能が有効になっているユーザを
306    守ることにはならないので、もちろんより良い解決策は単にスクリプトを修正
307    (あるいは削除) することです。</p>
308
309<h3>参照</h3>
310<ul>
311<li><code class="directive"><a href="/mod/mod_mime.html#addcharset">AddCharset</a></code></li>
312</ul>
313</div>
314<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
315<div class="directive-section"><h2><a name="AddOutputFilterByType" id="AddOutputFilterByType">AddOutputFilterByType</a> <a name="addoutputfilterbytype" id="addoutputfilterbytype">ディレクティブ</a></h2>
316<table class="directive">
317<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>MIME-type に出力フィルタを割り当てる</td></tr>
318<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AddOutputFilterByType <var>filter</var>[;<var>filter</var>...] <var>MIME-type</var>
319[<var>MIME-type</var>] ...</code></td></tr>
320<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
321<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
322<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
323<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
324<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0.33 以降で使用可能。ただし 2.1 以降で非推奨。</td></tr>
325</table>
326    <p>このディレクティブは応答の <a class="glossarylink" href="/glossary.html#mime-type" title="用語集を参照">MIME タイプ</a> に応じて出力<a href="/filter.html">フィルタ</a>を使用するようにします。
327    ただし下で説明される理由により、本ディレクティブは非推奨です。
328    同等の機能は <code class="module"><a href="/mod/mod_filter.html">mod_filter</a></code> で利用できます。</p>
329
330    <p>次の例は <code class="module"><a href="/mod/mod_deflate.html">mod_deflate</a></code> の <code>DEFLATE</code> フィルタを
331    使っています。<code>text/html</code> と <code>text/plain</code> の
332    すべての出力 (静的なものも動的なものも) をクライアントに送られる前に
333    圧縮します。</p>
334
335    <div class="example"><p><code>
336      AddOutputFilterByType DEFLATE text/html text/plain
337    </code></p></div>
338
339    <p>複数のフィルタでコンテンツを処理させたいときは、それぞれの名前をセミコロンで
340    分ける必要があります。各フィルタに対して
341    <code class="directive">AddOutputFilterByType</code> を一つずつ書くこともできます。</p>
342
343    <p>次の例は <code>text/html</code> のスクリプトのすべての出力を
344    まず <code>INCLUDES</code> フィルタで処理し、さらに <code>DEFLATE</code> フィルタにかけます。</p>
345
346    <div class="example"><p><code>
347    &lt;Location /cgi-bin/&gt;<br />
348    <span class="indent">
349      Options Includes<br />
350      AddOutputFilterByType INCLUDES;DEFLATE text/html<br />
351    </span>
352    &lt;/Location&gt;
353    </code></p></div>
354
355    <div class="warning"><h3>注:</h3>
356      <p><code class="directive">AddOutputFilterByType</code> ディレクティブにより
357      有効にしたフィルタは場合によっては、部分的もしくは完全に適用されないことが
358      あります。例えば、<a class="glossarylink" href="/glossary.html#mime-type" title="用語集を参照">MIME タイプ</a> が決定できないときには
359      <code class="directive"><a href="#defaulttype">DefaultType</a></code> の設定が同じだったとしても、
360      <code class="directive"><a href="#defaulttype">DefaultType</a></code> 設定を使うようになります。</p>
361      <p>しかし、確実にフィルタが適用されるようにしたいときは、リソースに
362      明示的にコンテントタイプを割り当てることができます。これには例えば
363      <code class="directive"><a href="/mod/mod_mime.html#addtype">AddType</a></code> ディレクティブや
364      <code class="directive"><a href="#forcetype">ForceType</a></code> ディレクティブを使います。
365      (nphでない) CGI スクリプトでコンテントタイプを設定するというものでも
366      大丈夫です。</p>
367    </div>
368
369<h3>参照</h3>
370<ul>
371<li><code class="directive"><a href="/mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code></li>
372<li><code class="directive"><a href="#setoutputfilter">SetOutputFilter</a></code></li>
373<li><a href="/filter.html">フィルタ</a></li>
374</ul>
375</div>
376<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
377<div class="directive-section"><h2><a name="AllowEncodedSlashes" id="AllowEncodedSlashes">AllowEncodedSlashes</a> <a name="allowencodedslashes" id="allowencodedslashes">ディレクティブ</a></h2>
378<table class="directive">
379<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>URL 中の符号化されたパス分離文字が先に伝えられるのを許可するかどうかを
380決定する</td></tr>
381<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AllowEncodedSlashes On|Off</code></td></tr>
382<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>AllowEncodedSlashes Off</code></td></tr>
383<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
384<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
385<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
386<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0.46 以降で使用可能</td></tr>
387</table>
388    <p><code class="directive">AllowEncodedSlashes</code> ディレクティブは符号化された
389    パス分離文字 (<code>/</code> は <code>%2F</code>、さらにシステムによっては
390    <code>\</code> に対応する <code>%5C</code>) が存在する URL の使用を
391    許可するかどうかを決定します。通常はそのような URL は 404 (Not found) エラー
392    で拒否されます。</p>
393
394    <p><code class="directive">AllowEncodedSlashes</code> <code>On</code> による
395    パス分離文字の使用は、<code>PATH_INFO</code> と合わせて
396    使うときに一番役に立ちます。</p>
397
398    <div class="note"><h3>注</h3>
399      <p>符号化されたスラッシュを許可することは、<em>復号</em>をすることを
400       意味<em>しません</em>。<code>%2F</code> や (関係するシステムでの)
401       <code>%5C</code> は、他の部分が復号された URL の中でもそのままの形式で
402       残されます。</p>
403    </div>
404
405<h3>参照</h3>
406<ul>
407<li><code class="directive"><a href="#acceptpathinfo">AcceptPathInfo</a></code></li>
408</ul>
409</div>
410<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
411<div class="directive-section"><h2><a name="AllowOverride" id="AllowOverride">AllowOverride</a> <a name="allowoverride" id="allowoverride">ディレクティブ</a></h2>
412<table class="directive">
413<tr><th><a href="directive-dict.html#Description">説明:</a></th><td><code>.htaccess</code> で許可されるディレクティブの種類</td></tr>
414<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AllowOverride All|None|<var>directive-type</var> 
415[<var>directive-type</var>] ...</code></td></tr>
416<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>AllowOverride All</code></td></tr>
417<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ</td></tr>
418<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
419<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
420</table>
421    <p>サーバが (<code class="directive"><a href="#accessfilename">AccessFileName</a></code> によって指定された)
422    <code>.htaccess</code> ファイルを見つけた時、そのファイルの中で
423    宣言されたどのディレクティブがより前に定義された設定ディレクティブを
424    上書きできるかを知る必要があります。</p>
425
426    <div class="note"><h3>&lt;Directory&gt; セクションでのみ使用可能</h3>
427    <code class="directive">AllowOverride</code> は正規表現無しの<code class="directive"><a href="#directory">&lt;Directory&gt;</a></code>
428    セクションでのみ有効で、<code class="directive"><a href="#location">&lt;Location&gt;</a></code> や <code class="directive"><a href="#directorymatch">&lt;DirectoryMatch&gt;</a></code>
429    や <code class="directive"><a href="#files">&lt;Files&gt;</a></code> セクションでは無効です。
430    </div>
431
432    <p>このディレクティブを <code>None</code> に設定すると、<a href="#accessfilename">.htaccess</a> ファイルは完全に
433    無視されます。
434    この場合、サーバはファイルシステムの <code>.htaccess</code> ファイルを読むことを
435    試みさえしません。</p>
436
437    <p>このディレクティブが <code>All</code> に設定されている時には、
438    <code>.htaccess</code> という <a href="directive-dict.html#Context">コンテキスト</a> を持つ
439    全てのディレクティブが利用できます。</p>
440
441    <p><var>directive-type</var> には、以下のディレクティブ群の
442    キーワードのどれかを指定します。</p>
443
444    <dl>
445      <dt>AuthConfig</dt>
446
447      <dd>
448
449      認証に関するディレクティブの使用を許可する (<code class="directive"><a href="/mod/mod_authn_dbm.html#authdbmgroupfile">AuthDBMGroupFile</a></code>,
450      <code class="directive"><a href="/mod/mod_authn_dbm.html#authdbmuserfile">AuthDBMUserFile</a></code>,
451      <code class="directive"><a href="/mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code>,
452      <code class="directive"><a href="#authname">AuthName</a></code>, 
453      <code class="directive"><a href="#authtype">AuthType</a></code>, <code class="directive"><a href="/mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code>, <code class="directive"><a href="#require">Require</a></code> <em>など</em>)。</dd>
454
455      <dt>FileInfo</dt>
456
457      <dd>
458      ドキュメントタイプを制御するディレクティブ (<code class="directive"><a href="#defaulttype">DefaultType</a></code>, <code class="directive"><a href="#errordocument">ErrorDocument</a></code>, <code class="directive"><a href="#forcetype">ForceType</a></code>, <code class="directive"><a href="/mod/mod_negotiation.html#languagepriority">LanguagePriority</a></code>,
459      <code class="directive"><a href="#sethandler">SetHandler</a></code>, <code class="directive"><a href="#setinputfilter">SetInputFilter</a></code>, <code class="directive"><a href="#setoutputfilter">SetOutputFilter</a></code>, 
460      <code class="module"><a href="/mod/mod_mime.html">mod_mime</a></code> の Add* と Remove*
461      ディレクティブ<em>など</em>)、
462      ドキュメントのメタデータを制御するディレクティブ (<code class="directive"><a href="/mod/mod_headers.html#header">Header</a></code>, <code class="directive"><a href="/mod/mod_headers.html#requestheader">RequestHeader</a></code>, <code class="directive"><a href="/mod/mod_setenvif.html#setenvif">SetEnvIf</a></code>, <code class="directive"><a href="/mod/mod_setenvif.html#setenvifnocase">SetEnvIfNoCase</a></code>, <code class="directive"><a href="/mod/mod_setenvif.html#browsermatch">BrowserMatch</a></code>, <code class="directive"><a href="/mod/mod_usertrack.html#cookieexpires">CookieExpires</a></code>, <code class="directive"><a href="/mod/mod_usertrack.html#cookiedomain">CookieDomain</a></code>, <code class="directive"><a href="/mod/mod_usertrack.html#cookiestyle">CookieStyle</a></code>, <code class="directive"><a href="/mod/mod_usertrack.html#cookietracking">CookieTracking</a></code>, <code class="directive"><a href="/mod/mod_usertrack.html#cookiename">CookieName</a></code>),
463      <code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code> のディレクティブ <code class="directive"><a href="/mod/mod_rewrite.html#rewriteengine">RewriteEngine</a></code>, <code class="directive"><a href="/mod/mod_rewrite.html#rewriteoptions">RewriteOptions</a></code>, <code class="directive"><a href="/mod/mod_rewrite.html#rewritebase">RewriteBase</a></code>, <code class="directive"><a href="/mod/mod_rewrite.html#rewritecond">RewriteCond</a></code>, <code class="directive"><a href="/mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>) と
464      <code class="module"><a href="/mod/mod_actions.html">mod_actions</a></code> の
465      <code class="directive"><a href="/mod/mod_actions.html#action">Action</a></code>
466      ディレクティブの使用を許可する。</dd>
467
468      <dt>Indexes</dt>
469
470      <dd>
471      ディレクトリインデックスを制御するためのディレクティブの使用を許可する
472      (<code class="directive"><a href="/mod/mod_autoindex.html#adddescription">AddDescription</a></code>,
473      <code class="directive"><a href="/mod/mod_autoindex.html#addicon">AddIcon</a></code>, <code class="directive"><a href="/mod/mod_autoindex.html#addiconbyencoding">AddIconByEncoding</a></code>,
474      <code class="directive"><a href="/mod/mod_autoindex.html#addiconbytype">AddIconByType</a></code>,
475      <code class="directive"><a href="/mod/mod_autoindex.html#defaulticon">DefaultIcon</a></code>, <code class="directive"><a href="/mod/mod_dir.html#directoryindex">DirectoryIndex</a></code>, <code class="directive"><a href="/mod/mod_autoindex.html#fancyindexing">FancyIndexing</a></code>, <code class="directive"><a href="/mod/mod_autoindex.html#headername">HeaderName</a></code>, <code class="directive"><a href="/mod/mod_autoindex.html#indexignore">IndexIgnore</a></code>, <code class="directive"><a href="/mod/mod_autoindex.html#indexoptions">IndexOptions</a></code>, <code class="directive"><a href="/mod/mod_autoindex.html#readmename">ReadmeName</a></code>
476      <em>など</em>)。</dd>
477
478      <dt>Limit</dt>
479
480      <dd>
481      ホストへのアクセス制御を行うためのディレクティブの使用を許可する (<code class="directive"><a href="/mod/mod_authz_host.html#allow">Allow</a></code>, <code class="directive"><a href="/mod/mod_authz_host.html#deny">Deny</a></code>, <code class="directive"><a href="/mod/mod_authz_host.html#order">Order</a></code>).</dd>
482
483      <dt>Options[=<var>Option</var>,...]</dt>
484
485      <dd>
486      特定のディレクトリにおける機能を指定するためのディレクティブの使用を許可する
487      (<code class="directive"><a href="#options">Options</a></code> と
488      <code class="directive"><a href="/mod/mod_include.html#xbithack">XBitHack</a></code>)。
489      <code class="directive"><a href="#options">Options</a></code> で設定するオプション
490      を、(空白を含めない) コンマ区切りのリストにして等号の後に続けることで
491      設定できます。</dd>
492    </dl>
493
494    <p>例:</p>
495
496    <div class="example"><p><code>
497      AllowOverride AuthConfig Indexes
498    </code></p></div>
499
500    <p>上の例では <code>AuthConfig</code> と <code>Indexes</code> のどちらにも
501    属さないディレクティブはすべて内部サーバエラーを引き起こします。</p>
502
503<h3>参照</h3>
504<ul>
505<li><code class="directive"><a href="#accessfilename">AccessFileName</a></code></li>
506<li><a href="/configuring.html">設定ファイル</a></li>
507<li><a href="/howto/htaccess.html">.htaccess ファイル</a></li>
508</ul>
509</div>
510<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
511<div class="directive-section"><h2><a name="AuthName" id="AuthName">AuthName</a> <a name="authname" id="authname">ディレクティブ</a></h2>
512<table class="directive">
513<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>HTTP 認証の認可領域 (訳注: realm)</td></tr>
514<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AuthName <var>auth-domain</var></code></td></tr>
515<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr>
516<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>AuthConfig</td></tr>
517<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
518<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
519</table>
520    <p>このディレクティブはディレクトリに対する認可領域 (訳注: realm)
521    の名前を指定します。
522    認可領域は、利用者がどのユーザ名とパスワードを送信すればよいのかを
523    クライアントに教えるために利用します。
524    <code class="directive">AuthName</code> は一つの引数をとり、
525    スペースが含まれる場合には、
526    引用符で括らなければなりません。
527    このディレクティブは
528    <code class="directive"><a href="#authtype">AuthType</a></code> ディレクティブや
529    <code class="directive"><a href="#require">Require</a></code> ディレクティブと、
530    <code class="directive"><a href="/mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code> や
531    <code class="directive"><a href="/mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code> などのディレクティブと
532    一緒に利用する必要があります。</p>
533
534   <p>例えば:</p>
535
536   <div class="example"><p><code>
537     AuthName "Top Secret"
538   </code></p></div>
539
540    <p>ここで <code>AuthName</code> に指定した文字列が、
541    大部分のブラウザのパスワードダイアログに表示されます。</p>
542
543<h3>参照</h3>
544<ul>
545<li><a href="/howto/auth.html">認証、承認、アクセス制御</a></li>
546</ul>
547</div>
548<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
549<div class="directive-section"><h2><a name="AuthType" id="AuthType">AuthType</a> <a name="authtype" id="authtype">ディレクティブ</a></h2>
550<table class="directive">
551<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ユーザ認証の種類</td></tr>
552<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AuthType Basic|Digest</code></td></tr>
553<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr>
554<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>AuthConfig</td></tr>
555<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
556<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
557</table>
558    <p>このディレクティブは対象ディレクトリで利用するユーザー認証の種類を選びます。
559    使用できる認証方式は <code>Basic</code> (<code class="module"><a href="/mod/mod_auth_basic.html">mod_auth_basic</a></code> 
560    で実装) と <code>Digest</code> (<code class="module"><a href="/mod/mod_auth_digest.html">mod_auth_digest</a></code>
561    で実装) です。</p>
562
563    <p>認証を有効にするには、<code class="directive"><a href="#authname">AuthName</a></code>
564    と <code class="directive"><a href="#require">Require</a></code> ディレクティブも
565    使う必要があります。それに加えて認証プロバイダモジュールの
566    <code class="module"><a href="/mod/mod_authn_file.html">mod_authn_file</a></code> 等と、承認モジュール
567    <code class="module"><a href="/mod/mod_authz_user.html">mod_authz_user</a></code> 等もサーバに組み込む必要があります。</p>
568
569<h3>参照</h3>
570<ul>
571<li><a href="/howto/auth.html">認証、承認、アクセス制御</a></li>
572</ul>
573</div>
574<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
575<div class="directive-section"><h2><a name="CGIMapExtension" id="CGIMapExtension">CGIMapExtension</a> <a name="cgimapextension" id="cgimapextension">ディレクティブ</a></h2>
576<table class="directive">
577<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>CGI スクリプトのインタープリタの位置を調べるための手法</td></tr>
578<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>CGIMapExtension <var>cgi-path</var> <var>.extension</var></code></td></tr>
579<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr>
580<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
581<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
582<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
583<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>NetWare のみ</td></tr>
584</table>
585    <p>このディレクティブは Apache が CGI スクリプトを実行するための
586    インタープリタを探す方法を制御します。
587    例えば、<code>CGIMapExtension sys:\foo.nlm .foo</code> と設定すると
588    <code>.foo</code> という拡張子のすべての CGI スクリプトは FOO インタープリタに
589    渡されます。</p>
590
591</div>
592<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
593<div class="directive-section"><h2><a name="ContentDigest" id="ContentDigest">ContentDigest</a> <a name="contentdigest" id="contentdigest">ディレクティブ</a></h2>
594<table class="directive">
595<tr><th><a href="directive-dict.html#Description">説明:</a></th><td><code>Content-MD5</code> HTTP 応答ヘッダの生成を有効にする</td></tr>
596<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ContentDigest On|Off</code></td></tr>
597<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ContentDigest Off</code></td></tr>
598<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
599<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>Options</td></tr>
600<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
601<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
602</table>
603    <p>このディレクティブは、RFC1864 及び RFC2616 において定義されている
604    <code>Content-MD5</code> ヘッダーの生成を有効にします。</p>
605
606    <p>MD5 は、任意長のデータの「メッセージダイジェスト」(「指紋」
607    と表現されることもある) を計算するアルゴリズムで、
608    データの変更があった場合には非常に高い信頼度でメッセージダイジェストに変更が
609    反映されます。</p>
610
611    <p><code>Content-MD5</code> ヘッダは、エンドツーエンドで
612    エンティティボディーに含まれるメッセージの完全性チェック
613    (Message Integrity Check - MIC)を提供します。
614    このヘッダを調べることで、プロキシやクライアントは、
615    途中経路におけるエンティティボディの予期せぬ変更などを
616    検出することができます。ヘッダの例:</p>
617
618    <div class="example"><p><code>
619      Content-MD5: AuLb7Dp1rqtRtxz2m9kRpA==
620    </code></p></div>
621
622    <p>リクエスト毎にメッセージダイジェストを計算する (値はキャッシュされません)
623    ことから、
624    サーバパフォーマンスが低下することについて注意してください。</p>
625
626    <p><code>Content-MD5</code>は、<code class="module"><a href="/mod/core.html">core</a></code> 機能により処理された
627    ドキュメントを送るときのみ有効であり、
628    SSI ドキュメントや CGI スクリプトの出力、バイトレンジを指定した
629    応答の場合にはこのヘッダは付与されません。
630    </p>
631
632</div>
633<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
634<div class="directive-section"><h2><a name="DefaultType" id="DefaultType">DefaultType</a> <a name="defaulttype" id="defaulttype">ディレクティブ</a></h2>
635<table class="directive">
636<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバがコンテントタイプを決定できないときに
637送られる MIME コンテントタイプ</td></tr>
638<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>DefaultType <var>MIME-type|none</var></code></td></tr>
639<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>DefaultType text/plain</code></td></tr>
640<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
641<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
642<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
643<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
644</table>
645    <p>サーバは、<a class="glossarylink" href="/glossary.html#mime-type" title="用語集を参照">MIME タイプ</a>
646    のマッピングでは決定できない
647    ドキュメントの送信を要求されることがあります。</p>
648
649    <p>サーバは、ドキュメントのコンテントタイプをクライアントに通知するべき(SHOULD)です。
650    もし通常の方法ではコンテントタイプが分からない場合は、
651    <code>DefaultType</code> で指定されたタイプを利用します。
652    例:</p>
653
654    <div class="example"><p><code>
655      DefaultType image/gif
656    </code></p></div>
657
658    <p>これは <code>.gif</code> という拡張子がファイル名に含まれていない
659    多くの GIF 画像が含まれているディレクトリに適しているでしょう。</p>
660    
661    <p>サーバ側でも管理者側(たとえば proxy)でもコンテントタイプが分からない場合で、
662    MIME タイプの情報が誤ってついているかもしれないぐらいであればむしろ無いほうがよい、
663    という場合もあるでしょう。このような場合は、次のようにします。</p>
664    <div class="example"><p><code>
665      DefaultType None
666    </code></p></div>
667    <p>DefaultType None は httpd-2.2.7 以降で使えます。</p>
668
669    <p><code class="directive"><a href="#forcetype">ForceType</a></code> ディレクティブと
670    違って、このディレクティブはデフォルトの MIME タイプを提供するだけで
671    あることに注意してください。ファイル名の拡張子を含め、
672    メディアタイプを決定できる他の MIME タイプの定義があれば
673    このデフォルトは上書きされます。</p>
674
675</div>
676<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
677<div class="directive-section"><h2><a name="Directory" id="Directory">&lt;Directory&gt;</a> <a name="directory" id="directory">ディレクティブ</a></h2>
678<table class="directive">
679<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>指定のファイルシステムのディレクトリとサブディレクトリとのみに
680適用されるディレクティブを囲む</td></tr>
681<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>&lt;Directory <var>directory-path</var>&gt;
682... &lt;/Directory&gt;</code></td></tr>
683<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
684<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
685<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
686</table>
687    <p>指定されたディレクトリとそのサブディレクトリにのみ
688    ディレクティブを適用させるためには、
689    <code class="directive">&lt;Directory&gt;</code> と 
690    <code>&lt;/Directory&gt;</code> を対として、ディレクティブ群を囲います。
691    その中には、ディレクトリコンテキストで許可された全てのディレクティブを
692    利用できます。
693    <var>directive-path</var> は、フルパスもしくは Unix のシェル形式の
694    ワイルドカードを指定します。
695    <code>?</code> は任意の 1 文字、<code>*</code> は任意の文字列にマッチします。
696    シェルにおける指定同様、文字の範囲を <code>[]</code> で指定できます。
697    ワイルドカードは `/' 文字にはマッチしませんので、
698    <code>/home/user/public_html</code> には
699    <code>&lt;Directory /*/public_html&gt;</code> はマッチしませんが、
700    <code>&lt;Directory /home/*/public_html&gt;</code> はマッチします。
701    例:</p>
702
703    <div class="example"><p><code>
704      &lt;Directory /usr/local/httpd/htdocs&gt;<br />
705      <span class="indent">
706        Options Indexes FollowSymLinks<br />
707      </span>
708      &lt;/Directory&gt;
709    </code></p></div>
710
711<div class="note">
712<p><var>directory-path</var> 引数には注意してください: その引数は
713Apache がファイルをアクセスするために使うファイルシステムのパスに
714そのままマッチする必要があります。ある <code>&lt;Directory&gt;</code> に
715適用されるディレクティブは、別のシンボリックリンクをたどったりして
716同じディレクトリを違うパスでアクセスした場合には適用されません。</p>
717</div>
718
719    <p><code>~</code> という文字を
720    付加することで<a class="glossarylink" href="/glossary.html#regex" title="用語集を参照">正規表現</a>を利用することもできます。
721    例えば:</p>
722
723<div class="example"><p><code>
724   &lt;Directory ~ "^/www/.*/[0-9]{3}"&gt;
725</code></p></div>
726
727    <p>といった指定の場合、<code>/www/</code> 以下にある数字
728    3 文字のディレクトリにマッチします。</p>
729
730    <p>もし複数の (正規表現以外の) <code class="directive">&lt;Directory&gt;</code>セクションが
731    ドキュメントを含むディレクトリ (やその上位ディレクトリのどれか) とマッチしたならば、
732    <a href="#accessfilename">.htaccess</a> ファイルのディレクティブも読み込みつつ、
733    短いパスから順に適用されます。
734    例えば、</p>
735
736    <div class="example"><p><code>
737      &lt;Directory /&gt;<br />
738      <span class="indent">
739        AllowOverride None<br />
740      </span>
741      &lt;/Directory&gt;<br />
742      <br />
743      &lt;Directory /home/&gt;<br />
744      <span class="indent">
745        AllowOverride FileInfo<br />
746      </span>
747      &lt;/Directory&gt;
748    </code></p></div>
749
750    <p>と設定し、ドキュメント <code>/home/web/dir/doc.html</code> への
751    アクセスがあった場合には以下のように動作します:</p>
752
753    <ul>
754      <li><code>AllowOverride None</code> が適用される。
755      (<code>.htaccess</code> ファイルは無効になる)</li>
756
757      <li><code>AllowOverride FileInfo</code> が適用される
758      (<code>/home</code> ディレクトリに対して)。</li>
759
760      <li><code>/home/.htaccess</code>, <code>/home/web/.htaccess</code>,
761      <code>/home/web/dir/.htaccess</code> の順にそれらのファイル中の
762       FileInfo ディレクティブが適用される。</li>
763    </ul>
764
765    <p>正規表現は、通常のセクションがすべて適用されるまで
766    考慮されません。
767    その後、全ての正規表現が設定ファイルに現れた順で試されます。
768    例えば、以下のような場合に</p>
769
770    <div class="example"><p><code>
771      &lt;Directory ~ abc$&gt;<br />
772      <span class="indent">
773        # ... directives here ...<br />
774      </span>
775      &lt;/Directory&gt;
776    </code></p></div>
777
778    <p>正規表現のセクションはすべての通常の <code class="directive">&lt;Directory&gt;</code> と
779    <code>.htaccess</code> の適用が終わるまで考慮されません。
780    その後で、正規表現は <code>/home/abc/public_html/abc</code> にマッチし、
781    対応する <code class="directive">&lt;Directory&gt;</code> が適用されます。</p>
782
783    <p><strong>Apache のデフォルトでは <code>&lt;Directory /&gt;</code> へのアクセスは
784    <code>Allow from All</code> になっていることに注意してください。
785    これは、URL からマップされたどのファイルでも Apache は送るということです。
786    これは以下のようにして変更することが推奨されています。</strong></p>
787
788    <div class="example"><p><code>
789      &lt;Directory /&gt;<br />
790      <span class="indent">
791        Order Deny,Allow<br />
792        Deny from All<br />
793      </span>
794      &lt;/Directory&gt;
795    </code></p></div>
796
797    <p><strong>そしてアクセスを<em>可能にしたい</em>ディレクトリに対して
798    個別に設定すればよいでしょう。
799    このあたりについては、<a href="/misc/security_tips.html">セキュリティに関するコツ</a>を
800    参照してください。</strong></p>
801
802    <p>ディレクトリセクションは <code>httpd.conf</code> ファイル書きます。
803    <code class="directive">&lt;Directory&gt;</code>
804    ディレクティブは入れ子にすることができず、
805    <code class="directive"><a href="#limit">&lt;Limit&gt;</a></code> や <code class="directive"><a href="#limitexcept">&lt;LimitExcept&gt;</a></code> セクションの中にも
806    記述できません。</p>
807
808
809<h3>参照</h3>
810<ul>
811<li>リクエストを受けた際にこれらの異なるセクションが
812    組み合わされる方法については <a href="/sections.html">
813    &lt;Directory&gt;, &lt;Location&gt;, &lt;Files&gt; セクションの動作法</a></li>
814</ul>
815</div>
816<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
817<div class="directive-section"><h2><a name="DirectoryMatch" id="DirectoryMatch">&lt;DirectoryMatch&gt;</a> <a name="directorymatch" id="directorymatch">ディレクティブ</a></h2>
818<table class="directive">
819<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>正規表現にマッチするファイルシステムのディレクトリと
820サブディレクトリとのみに適用されるディレクティブを囲む</td></tr>
821<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>&lt;DirectoryMatch <var>regex</var>&gt;
822... &lt;/DirectoryMatch&gt;</code></td></tr>
823<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
824<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
825<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
826</table>
827    <p><code class="directive"><a href="#directory">&lt;Directory&gt;</a></code>
828    ディレクティブと同様に、<code class="directive">&lt;DirectoryMatch&gt;</code>
829    と <code>&lt;/DirectoryMatch&gt;</code> は指定されたディレクトリと
830    そのサブディレクトリにのみ適用されるディレクティブ群を囲います。
831    しかし、このディレクティブは引数として<a class="glossarylink" href="/glossary.html#regex" title="用語集を参照">正規表現</a>をとります。例えば:</p>
832
833    <div class="example"><p><code>
834      &lt;DirectoryMatch "^/www/(.+/)?[0-9]{3}"&gt;
835    </code></p></div>
836
837    <p>は <code>/www/</code> 以下にある数字 3 文字のディレクトリにマッチします。</p>
838
839
840<h3>参照</h3>
841<ul>
842<li>通常の <code class="directive">&lt;Directory&gt;</code> と正規表現の指定が
843適用される順番については <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code></li>
844<li>リクエストを受けた際にこれらの異なるセクションが
845    組み合わされる方法については <a href="/sections.html">
846    &lt;Directory&gt;, &lt;Location&gt;, &lt;Files&gt; セクションの動作法</a></li>
847</ul>
848</div>
849<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
850<div class="directive-section"><h2><a name="DocumentRoot" id="DocumentRoot">DocumentRoot</a> <a name="documentroot" id="documentroot">ディレクティブ</a></h2>
851<table class="directive">
852<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ウェブから見えるメインのドキュメントツリーになる
853ディレクトリ</td></tr>
854<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>DocumentRoot <var>directory-path</var></code></td></tr>
855<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>DocumentRoot /usr/local/apache/htdocs</code></td></tr>
856<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
857<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
858<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
859</table>
860    <p>このディレクティブは、<code class="program"><a href="/programs/httpd.html">httpd</a></code>
861    がファイルを提供するディレクトリを設定します。
862     <code class="directive"><a href="/mod/mod_alias.html#alias">Alias</a></code> のようなディレクティブにマッチしない場合には、
863    ドキュメントの (訳注:ファイルシステム上の) パスを生成するために、
864    リクエストされた URL のパス部分をドキュメントルートに付与します。
865    例:</p>
866
867    <div class="example"><p><code>
868      DocumentRoot /usr/web
869    </code></p></div>
870
871    <p>この場合、
872    <code>http://www.my.host.com/index.html</code> へのアクセスがあれば
873    <code>/usr/web/index.html</code> が返されます。
874    <var>directory-path</var> が絶対パスでない場合は、
875    <code class="directive"><a href="#serverroot">ServerRoot</a></code> 
876    からの相対パスとみなされます。</p>
877
878    <p><code class="directive">DocumentRoot</code> は最後のスラッシュ無しで
879    指定する必要があります。</p>
880
881<h3>参照</h3>
882<ul>
883<li><a href="/urlmapping.html">URL をファイルシステムの位置に
884マップする</a></li>
885</ul>
886</div>
887<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
888<div class="directive-section"><h2><a name="EnableMMAP" id="EnableMMAP">EnableMMAP</a> <a name="enablemmap" id="enablemmap">ディレクティブ</a></h2>
889<table class="directive">
890<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>配送中にファイルを読み込むためにメモリマッピングを
891使うかどうか</td></tr>
892<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>EnableMMAP On|Off</code></td></tr>
893<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>EnableMMAP On</code></td></tr>
894<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
895<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
896<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
897<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
898</table>
899    <p>このディレクティブは配送中にファイルの内容を読み込む必要があるときに
900    <code class="program"><a href="/programs/httpd.html">httpd</a></code> がメモリマッピングを使うかどうかを制御します。
901    デフォルトでは、
902    例えば、<code class="module"><a href="/mod/mod_include.html">mod_include</a></code> を使って SSI ファイルを配送
903    するときのように、ファイルの途中のデータをアクセスする必要があるときには
904    Apache は OS がサポートしていればファイルをメモリにマップします。</p>
905
906    <p>
907    このメモリマップは性能の向上をもたらすことがあります。
908    しかし、環境によっては運用上の問題を防ぐためにメモリマッピングを
909    使用しないようにした方が良い場合もあります:</p>
910
911    <ul>
912    <li>マルチプロセッサシステムの中にはメモリマッピングをすると
913    <code class="program"><a href="/programs/httpd.html">httpd</a></code> の性能が落ちるものがあります。</li>
914    <li>NFS マウントされた <code class="directive"><a href="#documentroot">DocumentRoot</a></code>
915    では、<code class="program"><a href="/programs/httpd.html">httpd</a></code> がメモリマップしている間にファイルが削除されたり
916    短くなったりしたときに起こるセグメンテーションフォールトのために
917    <code class="program"><a href="/programs/httpd.html">httpd</a></code> がクラッシュする可能性があります。</li>
918    </ul>
919
920    <p>これらの問題に当てはまるサーバの設定の場合は、以下のようにして
921    ファイルの配送時のメモリマッピングを使用不可にしてください:</p>
922
923    <div class="example"><p><code>
924      EnableMMAP Off
925    </code></p></div>
926
927    <p>NFS マウントされたファイルには、問題のあるファイルにのみ明示的に
928    この機能を使用不可にします:</p>
929
930    <div class="example"><p><code>
931      &lt;Directory "/path-to-nfs-files"&gt;
932      <span class="indent">
933        EnableMMAP Off
934      </span>
935      &lt;/Directory&gt;
936    </code></p></div>
937
938</div>
939<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
940<div class="directive-section"><h2><a name="EnableSendfile" id="EnableSendfile">EnableSendfile</a> <a name="enablesendfile" id="enablesendfile">ディレクティブ</a></h2>
941<table class="directive">
942<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ファイルのクライアントへの配送時にカーネルの sendfile サポートを
943使うかどうか</td></tr>
944<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>EnableSendfile On|Off</code></td></tr>
945<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>EnableSendfile On</code></td></tr>
946<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
947<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
948<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
949<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
950<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>バージョン 2.0.44 以降で使用可能</td></tr>
951</table>
952    <p>このディレクティブはクライアントにファイルの内容を送るときに
953    <code class="program"><a href="/programs/httpd.html">httpd</a></code> がカーネルの
954    sendfile サポートを使うかどうかを制御します。デフォルトでは、
955    例えば静的なファイルの配送のように、リクエストの処理にファイルの
956    途中のデータのアクセスを必要としないときには、Apache は OS が
957    サポートしていればファイルを読み込むことなく sendfile を使って
958    ファイルの内容を送ります。</p>
959
960    <p>sendfile は read と send を別々に行なうことと、バッファの割り当てを
961    回避します。しかし、プラットフォームやファイルシステムの中には
962    運用上の問題を避けるためにこの機能を使用不可にした方が良い場合があります:</p>
963
964    <ul>
965    <li>プラットフォームの中にはビルドシステムが検知できなかった、壊れた
966    sendfile のサポートが存在するものがあります。これは特に
967    バイナリが別のマシンでビルドされ、壊れた sendfile のあるマシンに
968    移動したときに起こります。</li>
969    <li>Linux では、sendfile を用いると、
970    IPv6 使用時に存在する特定ネットワークカードの TCP-checksum
971    オフロードのバグを踏んでしまいます。</li>
972    <li>Itanium で動いている Linux で、sendfile は 2GB 以上の
973    ファイルを扱うことができないでしょう。</li>
974    <li>ネットワークマウントされた <code class="directive"><a href="#documentroot">DocumentRoot</a></code>
975    (例えば NFS や SMB)
976    では、カーネルは自身のキャッシュを使ってネットワークからのファイルを
977    送ることができないことがあります。</li>
978    </ul>
979
980    <p>これらの問題に当てはまるサーバの設定の場合は、以下のようにして
981    この機能を使用不可にしてください:</p>
982
983
984    <div class="example"><p><code>
985      EnableSendfile Off
986    </code></p></div>
987
988    <p>NFS や SMB マウントされたファイルには、問題のあるファイルにのみ明示的に
989    この機能を使用不可にします:</p>
990
991    <div class="example"><p><code>
992      &lt;Directory "/path-to-nfs-files"&gt;
993      <span class="indent">
994        EnableSendfile Off
995      </span>
996      &lt;/Directory&gt;
997    </code></p></div>
998
999</div>
1000<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1001<div class="directive-section"><h2><a name="ErrorDocument" id="ErrorDocument">ErrorDocument</a> <a name="errordocument" id="errordocument">ディレクティブ</a></h2>
1002<table class="directive">
1003<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>エラーが発生したときにサーバがクライアントに送るもの</td></tr>
1004<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ErrorDocument <var>error-code document</var></code></td></tr>
1005<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
1006<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
1007<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1008<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1009<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0 ではテキストをクウォートする構文が以前のバージョンから
1010変わっています。</td></tr>
1011</table>
1012    <p>問題やエラーが発生したときの動作として、
1013    Apache には以下の四つのうち一つの動作を設定することができます。</p>
1014
1015    <ol>
1016      <li>Apache 標準の簡単なエラーメッセージを表示</li>
1017
1018      <li>自分で指定したメッセージを表示</li>
1019
1020      <li>問題やエラーの処理をする為に、自サーバ内の
1021      <var>URL-path</var> へリダイレクト</li>
1022
1023      <li>問題やエラーの処理をする為に、外部の <var>URL</var> へリダイレクト</li>
1024    </ol>
1025
1026    <p>最初のものがデフォルトの動作で、2 番目から 4 番目は、
1027    <code class="directive">ErrorDocument</code>ディレクティブにより、
1028    HTTP のレスポンスコードと、メッセージか URL を指定することで設定します。
1029    Apache が問題もしくはエラーに関する追加情報を提供することがあります。</p>
1030
1031    <p>URL の場合は、スラッシュで始まる (/) ローカルの web-path (
1032    <code class="directive"><a href="#documentroot">DocumentRoot</a></code> からの相対パス
1033    ) か、クライアントが解決できる完全な URL を指定します。
1034    もしくは、ブラウザに表示されるメッセージを指定できます。
1035    例:</p>
1036
1037    <div class="example"><p><code>
1038      ErrorDocument 500 http://foo.example.com/cgi-bin/tester<br />
1039      ErrorDocument 404 /cgi-bin/bad_urls.pl<br />
1040      ErrorDocument 401 /subscription_info.html<br />
1041      ErrorDocument 403 "Sorry can't allow you access today"
1042    </code></p></div>
1043
1044    <p>加えて、特別な値 <code>default</code> を使って Apache に
1045    ハードコードされている簡単なメッセージを指定することができます。
1046    通常は必要ではありませんが、<code>default</code> を使うと
1047    既存の <code class="directive">ErrorDocument</code> ディレクティブの設定を
1048    継承するところで、Apache のハードコードされた簡単なメッセージに
1049    戻すことができます。</p>
1050
1051    <div class="example"><p><code>
1052      ErrorDocument 404 /cgi-bin/bad_urls.pl<br /><br />
1053      &lt;Directory /web/docs&gt;<br />
1054      <span class="indent">
1055        ErrorDocument 404 default<br />
1056      </span>
1057      &lt;/Directory&gt;
1058    </code></p></div>
1059
1060    <p>リモート URL (例えば、頭に <code>http</code> と付与した方法) を
1061    <code class="directive">ErrorDocument</code> に指定するとき、
1062    たとえ文書が同じサーバにあろうとも、ドキュメントがどこにあるかを通知するために、
1063    Apache はリダイレクトをクライアントに送出するということに、注意してください。
1064    これにはいろいろと関連して起こる問題があります。
1065    中でも最も重要なのは、クライアントは元々のエラーステータスコードを受け取らず、
1066    代わりにリダイレクトのステータスコードを受け取るということです。
1067    これにより、ステータスコードを使って URL が有効であるかどうかを決定しようとする
1068    ウェブロボットやその他クライアントを、混乱させるかもしれません。
1069    さらに、<code>ErrorDocument 401</code> にリモートの URL を指定すると、
1070    クライアントは 401 というステータスコードを受け取らないため、
1071    パスワードをユーザーに入力要求しなければならないことがわかりません。
1072    従って、<strong><code>ErrorDocument 401</code> というディレクティブを使う場合は、
1073    必ずローカルな文書を参照しなければなりません。</strong></p>
1074
1075    <p>Microsoft Internet Explorer (MSIE) はデフォルトではサーバが生成したエラーメッセージが
1076    「小さすぎる」ときには無視をして自分自身の「やさしい」エラーメッセージで
1077    置換します。サイズのしきい値はエラーの種類によって異なりますが、
1078    一般的にはエラーの文書を 512 バイトよりも大きくすると、MSIE は
1079    サーバが生成したエラーを隠さずに表示します。詳しい情報は Microsoft
1080    Knowledge Base の記事 <a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807">Q294807</a>
1081    にあります。</p>
1082
1083    <p>ほとんどのエラーメッセージを上書きすることができますが、特定の状況下では
1084    <code class="directive"><a href="#errordocument">ErrorDocument</a></code> の設定にかかわらず
1085    内蔵のメッセージが使われます。
1086    特に、不正な形式のリクエストが検出された場合、通常のリクエスト処理は
1087    即座に中止され、内蔵のエラーメッセージが返されます。
1088    この処置は不正なリクエストによって引き起こされる、セキュリティ問題から
1089    守るために必要な措置です。</p>
1090
1091    <p>2.0 より前のバージョンでは、対になっていない二重引用符を
1092    先頭に付けることによりメッセージであることを指定していました。</p>
1093
1094
1095<h3>参照</h3>
1096<ul>
1097<li><a href="/custom-error.html">カスタマイズ可能な
1098エラー応答のドキュメンテーション</a></li>
1099</ul>
1100</div>
1101<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1102<div class="directive-section"><h2><a name="ErrorLog" id="ErrorLog">ErrorLog</a> <a name="errorlog" id="errorlog">ディレクティブ</a></h2>
1103<table class="directive">
1104<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバがエラーをログ収集する場所</td></tr>
1105<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code> ErrorLog <var>file-path</var>|syslog[:<var>facility</var>]</code></td></tr>
1106<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ErrorLog logs/error_log (Unix) ErrorLog logs/error.log (Windows and OS/2)</code></td></tr>
1107<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
1108<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1109<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1110</table>
1111    <p><code class="directive">ErrorLog</code> ディレクティブは、
1112    サーバに生じたさまざまなエラーを
1113    記録する為のファイルの名前を設定します。
1114    <var>file-path</var> が絶対パスでないときは、<code class="directive"><a href="#serverroot">ServerRoot</a></code> からの相対パスとみなされます。</p>
1115
1116    <div class="example"><h3>例</h3><p><code>
1117    ErrorLog /var/log/httpd/error_log
1118    </code></p></div>
1119    
1120    <p><var>file-path</var> がパイプ (|) から始まる場合は、
1121    エラーログを処理するために実行されるコマンドが
1122    指定されていると解釈されます。</p>
1123
1124    <div class="example"><h3>例</h3><p><code>
1125    ErrorLog "|/usr/local/bin/httpd_errors"
1126    </code></p></div>
1127
1128    <p>ファイル名の変わりに <code>syslog</code> と指定することによって、
1129    システムがサポートしていれば syslogd(8) を利用したロギングが有効になります。
1130    デフォルトでは、<code>local7</code> ファシリティとなりますが、
1131    <code>syslog:<var>facility</var></code> といった形で記述することにより、
1132    通常 syslog(1) のドキュメントで説明されているファシリティの一つを使うように
1133    することができます。</p>
1134
1135    <div class="example"><h3>例</h3><p><code>
1136    ErrorLog syslog:user
1137    </code></p></div>
1138
1139    <p>セキュリティ: 
1140    ログファイルを格納するディレクトリが、サーバを起動したユーザ以外の
1141    ユーザによって書き込める場合にセキュリティが破られる可能性があることに
1142    関する詳細は <a href="/misc/security_tips.html#serverroot">セキュリティに関するコツ</a> を
1143    参照してください。</p>
1144    <div class="warning"><h3>注</h3>
1145      <p>Unix 以外のプラットフォームでファイルのパスを入力するときは、
1146      プラットフォームがバックスラッシュの使用を許していたとしても、
1147      確実にスラッシュのみが使用されるように注意してください。一般的には、
1148      設定ファイル全般でスラッシュのみを使う方が良いでしょう。</p>
1149    </div>
1150
1151<h3>参照</h3>
1152<ul>
1153<li><code class="directive"><a href="#loglevel">LogLevel</a></code></li>
1154<li><a href="/logs.html">Apache ログファイル</a></li>
1155</ul>
1156</div>
1157<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1158<div class="directive-section"><h2><a name="FileETag" id="FileETag">FileETag</a> <a name="fileetag" id="fileetag">ディレクティブ</a></h2>
1159<table class="directive">
1160<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ETag HTTP 応答ヘッダを作成するために使用される
1161ファイルの属性</td></tr>
1162<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>FileETag <var>component</var> ...</code></td></tr>
1163<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>FileETag INode MTime Size</code></td></tr>
1164<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
1165<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
1166<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1167<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1168</table>
1169    <p>
1170    <code class="directive">FileETag</code> ディレクティブは
1171    ドキュメントがファイルに基づいたものであるときに、
1172    <code>ETag</code> (エンティティタグ) 応答ヘッダフィールドを作成するときに使用する
1173    ファイルの属性を設定します。 (<code>ETag</code> の値はネットワークの帯域を節約するための
1174    キャッシュの管理で使われます。) Apache 1.3.22 以前では、<code>ETag</code> の値は
1175    <em>常に</em>ファイルの inode, サイズ、最終修正時刻 (mtime) から作成
1176    されていました。<code class="directive">FileETag</code> ディレクティブにより、これらのどれを使うかを
1177    選ぶことができます。認識されるキーワードは:
1178    </p>
1179
1180    <dl>
1181     <dt><strong>INode</strong></dt>
1182     <dd>ファイルの inode 番号を計算に使います</dd>
1183     <dt><strong>MTime</strong></dt>
1184     <dd>ファイルの最終修正時刻を使います</dd>
1185     <dt><strong>Size</strong></dt>
1186     <dd>ファイルの中身のバイト数を使います</dd>
1187     <dt><strong>All</strong></dt>
1188     <dd>使用可能なすべてのフィールドを使います。
1189     これは <div class="example"><p><code>FileETag INode MTime Size</code></p></div> と等価です。</dd>
1190     <dt><strong>None</strong></dt>
1191     <dd>ドキュメントがファイルに基づいたものでも、<code>ETag</code> フィールドを
1192    応答に付加しません</dd>
1193    </dl>
1194
1195    <p><code>INode</code>, <code>MTime</code>, <code>Size</code> キーワードには
1196    <code>+</code> や <code>-</code> を前に付けて
1197    指定することもできます。この場合は、より広い範囲から継承された
1198    デフォルトの設定に変更を加えるようになります。そのような接頭辞の
1199    無いキーワードを指定すると、即座に継承した設定を無効にします。</p>
1200
1201    <p>あるディレクトリの設定に
1202    <code>FileETag&nbsp;INode&nbsp;MTime&nbsp;Size</code> があり、
1203    サブディレクトリの設定に <code>FileETag&nbsp;-INode</code> があるときは、
1204    そのサブディレクトリの設定は (設定が上書きされなければサブディレクトリの
1205    サブディレクトリにも継承されます) <code>FileETag&nbsp;MTime&nbsp;Size</code>
1206    と同じになります。</p>
1207    <div class="warning"><h3>警告</h3>
1208    WebDAV を使っていて、<code class="module"><a href="/mod/mod_dav_fs.html">mod_dav_fs</a></code> をストレージプロバイダとして
1209    使っているような Directory や Location では、デフォルト値を変更しないでください。
1210    条件つきリクエスト中で、<code class="module"><a href="/mod/mod_dav_fs.html">mod_dav_fs</a></code> では 
1211    <code>INode&nbsp;MTime&nbsp;Size</code>
1212    という形式の固定フォーマットであることを前提として
1213    <code>ETag</code> の比較を行っています。もし <code>ETag</code> フォーマットを
1214    <code class="directive">FileETag</code> で変えてしまうと、条件つきリクエストが
1215    うまく動作しなくなるでしょう。
1216    </div>
1217
1218</div>
1219<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1220<div class="directive-section"><h2><a name="Files" id="Files">&lt;Files&gt;</a> <a name="files" id="files">ディレクティブ</a></h2>
1221<table class="directive">
1222<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>マッチするファイル名に適用されるディレクティブを囲む</td></tr>
1223<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>&lt;Files <var>filename</var>&gt; ... &lt;/Files&gt;</code></td></tr>
1224<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
1225<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
1226<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1227<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1228</table>
1229    <p><code class="directive">&lt;Files&gt;</code> ディレクティブは、
1230    その中にあるディレクティブの適用範囲をファイル名で制限します。
1231    <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> ディレクティブや <code class="directive"><a href="#location">&lt;Location&gt;</a></code> ディレクティブと
1232    同じような機能を持ちます。
1233    これは、<code>&lt;/Files&gt;</code> ディレクティブと対に
1234    なっていなければなりません。
1235    このセクション中のディレクティブは、ベース名 (ファイル名の最後の部分)
1236    が指定されたファイル名にマッチするすべてのオブジェクトに適用されます。
1237    <code class="directive">&lt;Files&gt;</code> セクションは
1238    <code class="directive">&lt;Directory&gt;</code> セクションと
1239    <code>.htaccess</code> が読み込まれた後、
1240    <code class="directive">&lt;Location&gt;</code> セクションよりは先に
1241    設定ファイルに現れた順に適用されます。
1242    <code class="directive">&lt;Files&gt;</code> は、
1243    <code class="directive">&lt;Directory&gt;</code> セクション内に
1244    ネストさせることができ、
1245    ファイルシステムの一部にのみ限定して適用させることができます。</p>
1246
1247    <p><var>filename</var> 引数は、ファイル名かワイルドカード文字列
1248    で、ワイルドカードでは <code>?</code> は一つの文字、<code>*</code> は任意の文字列にマッチします。
1249    <code>~</code> という文字を付加することで<a class="glossarylink" href="/glossary.html#regex" title="用語集を参照">正規表現</a>を使うこともできます。
1250    例えば、</p>
1251
1252    <div class="example"><p><code>
1253      &lt;Files ~ "\.(gif|jpe?g|png)$"&gt;
1254    </code></p></div>
1255
1256    <p>とすることにより、一般的なインターネットの画像フォーマットにマッチします。
1257    ただし、
1258    <code class="directive"><a href="#filesmatch">&lt;FilesMatch&gt;</a></code> を使う方が
1259    推奨されています。</p>
1260
1261    <p>ちなみに、<code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> と <code class="directive"><a href="#location">&lt;Location&gt;</a></code> セクションとは異なり、
1262    <code class="directive">&lt;Files&gt;</code>
1263    は <code>.htaccess</code> ファイル内で利用することができます。
1264    これにより、ユーザがファイル毎にアクセスの制御を行なうことができるように
1265    なっています。</p>
1266
1267
1268<h3>参照</h3>
1269<ul>
1270<li>リクエストを受けた際にこれらの異なるセクションが
1271    組み合わされる方法については <a href="/sections.html">
1272    &lt;Directory&gt;, &lt;Location&gt;, &lt;Files&gt; セクションの動作法</a></li>
1273</ul>
1274</div>
1275<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1276<div class="directive-section"><h2><a name="FilesMatch" id="FilesMatch">&lt;FilesMatch&gt;</a> <a name="filesmatch" id="filesmatch">ディレクティブ</a></h2>
1277<table class="directive">
1278<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>正規表現にマッチするファイル名に適用される
1279ディレクティブを囲む</td></tr>
1280<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>&lt;FilesMatch <var>regex</var>&gt; ... &lt;/FilesMatch&gt;</code></td></tr>
1281<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
1282<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
1283<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1284<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1285</table>
1286    <p><code class="directive">&lt;FilesMatch&gt;</code> ディレクティブは、
1287    <code class="directive"><a href="#files">&lt;Files&gt;</a></code>
1288    ディレクティブ同様にその中にあるディレクティブの適用範囲をファイル名で制限します。ただし、
1289    このディレクティブには正規表現を指定します。
1290    例えば:</p>
1291
1292    <div class="example"><p><code>
1293      &lt;FilesMatch "\.(gif|jpe?g|png)$"&gt;
1294    </code></p></div>
1295
1296    <p>は一般的なインターネットの画像形式にマッチします。</p>
1297
1298<h3>参照</h3>
1299<ul>
1300<li>リクエストを受けた際にこれらの異なるセクションが
1301    組み合わされる方法については <a href="/sections.html">
1302    &lt;Directory&gt;, &lt;Location&gt;, &lt;Files&gt; セクションの動作法</a></li>
1303</ul>
1304</div>
1305<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1306<div class="directive-section"><h2><a name="ForceType" id="ForceType">ForceType</a> <a name="forcetype" id="forcetype">ディレクティブ</a></h2>
1307<table class="directive">
1308<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>すべてのマッチするファイルが指定の MIME コンテントタイプで
1309送られるようにする</td></tr>
1310<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ForceType <var>MIME-type</var>|None</code></td></tr>
1311<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr>
1312<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
1313<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1314<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1315<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0 で core に移動</td></tr>
1316</table>
1317    <p><code>.htaccess</code> や <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> セクション、
1318    <code class="directive"><a href="#location">&lt;Location&gt;</a></code> セクション、
1319    <code class="directive"><a href="#files">&lt;Files&gt;</a></code> セクションに
1320    書かれた場合、このディレクティブはそこにあるすべてのファイルが
1321    <var>MIME-type</var>
1322    で指定されたコンテントタイプとして扱われるようにします。たとえば、
1323    GIF ファイルばかりのディレクトリがあって、すべてのファイルを <code>.gif</code>
1324    で終わらせたくはないときに、以下のものを使用します:</p>
1325
1326    <div class="example"><p><code>
1327      ForceType image/gif
1328    </code></p></div>
1329
1330    <p><code class="directive"><a href="#defaulttype">DefaultType</a></code> と違って
1331    このディレクティブはメディアタイプを決めることができるかもしれない
1332    ファイルの拡張子も含め、すべての MIME タイプの関連付けを
1333    上書きすることに注意してください。</p>
1334
1335    <p><code>None</code> という値を使うことで <code class="directive">ForceType</code> の
1336    設定を無効にできます:</p>
1337
1338    <div class="example"><p><code>
1339      # force all files to be image/gif:<br />
1340      &lt;Location /images&gt;<br />
1341        <span class="indent">
1342          ForceType image/gif<br />
1343        </span>
1344      &lt;/Location&gt;<br />
1345      <br />
1346      # but normal mime-type associations here:<br />
1347      &lt;Location /images/mixed&gt;<br />
1348      <span class="indent">
1349        ForceType None<br />
1350      </span>
1351      &lt;/Location&gt;
1352    </code></p></div>
1353
1354</div>
1355<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1356<div class="directive-section"><h2><a name="GprofDir" id="GprofDir">GprofDir</a> <a name="gprofdir" id="gprofdir">ディレクティブ</a></h2>
1357<table class="directive">
1358<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Directory to write gmon.out profiling data to.  </td></tr>
1359<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>GprofDir <var>/tmp/gprof/</var>|<var>/tmp/gprof/</var>%</code></td></tr>
1360<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
1361<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1362<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1363</table><p>このディレクティブの解説文書は
1364            まだ翻訳されていません。英語版をご覧ください。
1365            </p></div>
1366<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1367<div class="directive-section"><h2><a name="HostnameLookups" id="HostnameLookups">HostnameLookups</a> <a name="hostnamelookups" id="hostnamelookups">ディレクティブ</a></h2>
1368<table class="directive">
1369<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントの IP アドレスの DNS ルックアップを
1370有効にする</td></tr>
1371<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>HostnameLookups On|Off|Double</code></td></tr>
1372<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>HostnameLookups Off</code></td></tr>
1373<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ</td></tr>
1374<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1375<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1376</table>
1377    <p>このディレクティブは、ホスト名をログ収集できるように
1378    DNS ルックアップを有効にします
1379    (さらに、CGI/SSI に <code>REMOTE_HOST</code> 変数として渡します)。
1380    <code>Double</code>を指定した場合、2 重の逆引きを行ないます。
1381    つまり、逆引きの後に、その結果に対して正引きを行ないます。正引きの
1382    結果の IP アドレスの中にオリジナルのアドレスと一致するものがなければ
1383    なりません。("tcpwrappers" の用語では <code>PARANOID</code> と呼ばれています。)</p>
1384
1385    <p><code class="module"><a href="/mod/mod_authz_host.html">mod_authz_host</a></code> でホスト名によるアクセス
1386    制御を行なう場合には、
1387    設定の如何によらず 2 重の逆引きが実行されます。
1388    これは、セキュリティを保つために必要です。
1389    <code>HostnameLookups Double</code> を設定しない限り、
1390    他の部分はこの 2 重逆引きの結果を使うことはできません。
1391    例えば、<code>HostnameLookups On</code> と設定してある状態で、
1392    ホスト名によるアクセス制限を行なったオブジェクトへの
1393    リクエストを受けたとすると、2 重の逆引きが成功するか否かによらず、
1394    <code>REMOTE_HOST</code> には通常の逆引き結果が渡されます。</p>
1395
1396    <p>ディレクティブのデフォルトは
1397    本当に逆引きを必要としているわけではないサイトの
1398    ネットワークトラフィックを低減させるために、<code>Off</code> になっています。
1399    ルックアップによる余計な遅延がなくなるため、
1400    エンドユーザにとっても良いでしょう。
1401    DNS のルックアップには、かなりの時間が必要となる場合が多く、
1402    負荷の高いサイトではこのディレクティブは <code>Off</code> にすべきです。
1403    なお、<var>/support</var> ディレクトリに含まれ、デフォルトでは
1404    インストールディレクトリの <code>bin</code> サブディレクトリに
1405    インストールされる <code class="program"><a href="/programs/logresolve.html">logresolve</a></code> ユーティリティにより、
1406    Apache の動作とは別に、ログに残されている IP アドレスからホスト名を
1407    ルックアップすることが可能です。</p>
1408
1409</div>
1410<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1411<div class="directive-section"><h2><a name="IfDefine" id="IfDefine">&lt;IfDefine&gt;</a> <a name="ifdefine" id="ifdefine">ディレクティブ</a></h2>
1412<table class="directive">
1413<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>起動時にテストが真であるときのみに処理されるディレクティブを
1414囲む</td></tr>
1415<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>&lt;IfDefine [!]<var>parameter-name</var>&gt; ...
1416    &lt;/IfDefine&gt;</code></td></tr>
1417<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
1418<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
1419<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1420<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1421</table>
1422    <p><code>&lt;IfDefine <var>test</var>&gt;...&lt;/IfDefine&gt;</code>
1423    セクションは、
1424    ディレクティブを条件付きで指定するために利用します。
1425    <code class="directive">&lt;IfDefine&gt;</code> セクションに
1426    含まれるディレクティブは、<var>test</var>が
1427    定義されているときのみ処理されます。
1428    もし <var>test</var> が定義されていなければ、
1429    開始と終了の指定の間のディレクティブは無視されます。</p>
1430
1431    <p><code class="directive">&lt;IfDefine&gt;</code> セクションディレクティブに
1432    指定する <var>test</var> は、
1433    次の二つの形式のうちの一つをとります:</p>
1434
1435    <ul>
1436      <li><var>parameter-name</var></li>
1437
1438      <li><code>!</code><var>parameter-name</var></li>
1439    </ul>
1440
1441    <p>前者の場合には、<var>parameter-name</var> と名付けられたパラメータが
1442    定義されていれば開始と終了の間のディレクティブが処理されます。
1443    後者の場合は逆で、<em>parameter-name</em> が指定されて<strong>いない</strong>
1444    場合に処理されます。</p>
1445
1446    <p><var>parameter-name</var> 引数は、サーバを起動する際に
1447    <code class="program"><a href="/programs/httpd.html">httpd</a></code> のコマンドラインに
1448    <code>-D<var>parameter-</var></code> という形で指定すると定義されます。 </p>
1449
1450    <p><code class="directive">&lt;IfDefine&gt;</code> セクションは
1451    入れ子にすることができ、複数のパラメータによるテストをするために使用できます。
1452    例:</p>
1453
1454    <div class="example"><p><code>
1455      httpd -DReverseProxy ...<br />
1456      <br />
1457      # httpd.conf<br />
1458      &lt;IfDefine ReverseProxy&gt;<br />
1459      <span class="indent">
1460        LoadModule rewrite_module modules/mod_rewrite.so<br />
1461        LoadModule proxy_module   modules/libproxy.so<br />
1462      </span>
1463      &lt;/IfDefine&gt;
1464    </code></p></div>
1465
1466</div>
1467<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1468<div class="directive-section"><h2><a name="IfModule" id="IfModule">&lt;IfModule&gt;</a> <a name="ifmodule" id="ifmodule">ディレクティブ</a></h2>
1469<table class="directive">
1470<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>モジュールの存在するかしないかに応じて処理される
1471ディレクティブを囲む</td></tr>
1472<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>&lt;IfModule [!]<var>module-file</var>|<var>module-identifier</var>&gt; ...
1473    &lt;/IfModule&gt;</code></td></tr>
1474<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
1475<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
1476<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1477<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1478<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>モジュール識別子はバージョン 2.1 以降で使用可能。</td></tr>
1479</table>
1480    <p><code>&lt;IfModule <var>test</var>&gt;...&lt;/IfModule&gt;</code>
1481    セクションは、モジュールが存在するときに処理されるディレクティブを
1482    指定するために利用します。
1483    <code class="directive">&lt;IfModule&gt;</code> セクションに
1484    含まれるディレクティブは、<var>test</var>
1485    で指定するモジュールが組み込まれているときのみ処理されます。
1486    もし <var>test</var> が組み込まれていなければ、開始と終了の間のディレクティブ
1487    は無視されます。</p>
1488
1489    <p><code class="directive">&lt;IfModule&gt;</code> セクションディレクティブに
1490    指定する <var>test</var> は、
1491    次の二つの形式のうちの一つをとります。</p>
1492
1493    <ul>
1494      <li><var>module</var></li>
1495
1496      <li>!<var>module</var></li>
1497    </ul>
1498
1499    <p>前者の場合は、<var>module</var> と名付けられたモジュールが
1500    Apache に組み込まれていれば
1501    (コンパイル済みのものと、<code class="directive"><a href="/mod/mod_so.html#loadmodule">LoadModule</a></code> を利用して
1502    動的に読み込んだものの両方)、
1503    開始と終了の間のディレクティブが処理されます。
1504    後者の場合は逆で、<var>module</var> が組み込まれて<strong>いない</strong>
1505    場合に処理されます。</p>
1506
1507    <p><var>module</var> 引数は、モジュール識別子か
1508    コンパイルをした時のモジュールのファイル名です。
1509    例えば、<code>rewrite_module</code> は識別子で
1510    <code>mod_rewrite.c</code> はファイル名です。
1511    モジュールが複数のソースファイルから構成されている場合は、文字列
1512    <code>STANDARD20_MODULE_STUFF</code> があるファイルの名前を
1513    使ってください。</p>
1514
1515    <p><code class="directive">&lt;IfModule&gt;</code> セクションは
1516    入れ子にすることが可能であり、
1517    複数のモジュールのテストを行なうために使用できます。</p>
1518
1519    <div class="note">特定のモジュールの存在に関わらず動作する
1520    設定ファイルの原本が必要なときにのみこのセクションを使用してください。
1521    通常の動作では、ディレクティブを
1522    <code class="directive">&lt;IfModule&gt;</code> セクションの中に
1523    入れる必要はありません。</div>
1524
1525</div>
1526<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1527<div class="directive-section"><h2><a name="Include" id="Include">Include</a> <a name="include" id="include">ディレクティブ</a></h2>
1528<table class="directive">
1529<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバ設定ファイル中から他の設定ファイルを取り込む</td></tr>
1530<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Include <var>file-path</var>|<var>directory-path</var></code></td></tr>
1531<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ</td></tr>
1532<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1533<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1534<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>ワイルドカードによるマッチは 2.0.41 以降で使用可能</td></tr>
1535</table>
1536    <p>このディレクティブにより、サーバの設定ファイルから
1537    他の設定ファイルをインクルードすることができます。</p>
1538
1539    <p>複数のファイルをアルファベット順に一度に読み込むために、
1540    シェル形式 (<code>fnmatch</code>) のワイルドカード文字を使うことができます。
1541    さらに、<code class="directive">Include</code> にディレクトリを指定した場合は、
1542    ディレクトリとそのサブディレクトリ内の全てのファイルを
1543    アルファベット順に読み込んで、設定ファイルとして処理します。
1544    しかし、ディレクトリ全体を読み込むのはお勧めできません。
1545    ふとしたことから <code>httpd</code> が読み込みに失敗するような
1546    一時ファイルをディレクトリに残してしまうようなことがよくあるからです。</p>
1547
1548    <p>指定するファイルパスは絶対パスか、
1549    <code class="directive"><a href="#serverroot">ServerRoot</a></code> ディレクトリからの
1550    相対パスか、のどちらかです。</p>
1551
1552    <p>例:</p>
1553
1554    <div class="example"><p><code>
1555      Include /usr/local/apache2/conf/ssl.conf<br />
1556      Include /usr/local/apache2/conf/vhosts/*.conf
1557    </code></p></div>
1558
1559     <p><code class="directive"><a href="#serverroot">ServerRoot</a></code> からの相対パスの場合は:</p>
1560
1561    <div class="example"><p><code>
1562      Include conf/ssl.conf<br />
1563      Include conf/vhosts/*.conf
1564    </code></p></div>
1565
1566    <p><code>apachectl configtest</code> を実行すると、設定をチェックしている時に
1567    読み込まれたファイルのリストが表示されます:</p>
1568
1569    <div class="example"><p><code>
1570      root@host# apachectl configtest<br />
1571      Processing config file: /usr/local/apache2/conf/ssl.conf<br />
1572      Processing config file: /usr/local/apache2/conf/vhosts/vhost1.conf<br />
1573      Processing config file: /usr/local/apache2/conf/vhosts/vhost2.conf<br />
1574      Syntax OK
1575    </code></p></div>
1576
1577<h3>参照</h3>
1578<ul>
1579<li><code class="program"><a href="/programs/apachectl.html">apachectl</a></code></li>
1580</ul>
1581</div>
1582<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1583<div class="directive-section"><h2><a name="KeepAlive" id="KeepAlive">KeepAlive</a> <a name="keepalive" id="keepalive">ディレクティブ</a></h2>
1584<table class="directive">
1585<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>HTTP の持続的な接続を有効にする</td></tr>
1586<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>KeepAlive On|Off</code></td></tr>
1587<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>KeepAlive On</code></td></tr>
1588<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
1589<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1590<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1591</table>
1592    <p>HTTP/1.0 の Keep-Alive 拡張と HTTP/1.1 の持続的接続の機能は、
1593    複数のリクエストが同じ TCP の接続で送られる、長時間持続する
1594    HTTP セッションを提供します。たくさんの画像が
1595    含まれる HTML ドキュメントでは場合によっては遅延時間が 50% 短縮される結果も
1596    でています。Keep-Alive 接続を有効にするには
1597    <code>KeepAlive On</code> と設定します。</p>
1598
1599    <p>HTTP/1.0 に対応したクライアントの際には、
1600    クライアントより特に要求があった場合のみ Keep-Alive 接続となります。
1601    さらに、HTTP/1.0 クライアントでは、コンテンツの容量が先に
1602    (訳注: 要求に対して応答を返す前に) わかる場合のみ Keep-Alive
1603    接続を利用できます。
1604    これは、CGI の出力や SSI のページ、
1605    サーバが生成したディレクトリのリストのような動的コンテンツを
1606    HTTP/1.0 クライアントに送る場合には Keep-Alive 接続を使えないことを意味します。
1607    HTTP/1.1 に対応したクライアントの際には、
1608    特に指定されない限りはデフォルトとして持続的な接続が行なわれます。
1609    クライアントが要求すれば、コンテンツの容量を判別できないものを
1610    持続的な接続を通して送るために、チャンクエンコーディングが用いられます。</p>
1611
1612<h3>参照</h3>
1613<ul>
1614<li><code class="directive"><a href="#maxkeepaliverequests">MaxKeepAliveRequests</a></code></li>
1615</ul>
1616</div>
1617<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1618<div class="directive-section"><h2><a name="KeepAliveTimeout" id="KeepAliveTimeout">KeepAliveTimeout</a> <a name="keepalivetimeout" id="keepalivetimeout">ディレクティブ</a></h2>
1619<table class="directive">
1620<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>持続的な接続で次のリクエストが来るまでサーバが待つ時間</td></tr>
1621<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>KeepAliveTimeout <var>seconds</var></code></td></tr>
1622<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>KeepAliveTimeout 5</code></td></tr>
1623<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
1624<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1625<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1626</table>
1627    <p>接続を閉じる前に、Apache が次のリクエストを何秒待つかを指定します。
1628    リクエストを受け付けた後は、<code class="directive"><a href="#timeout">Timeout</a></code> ディレクティブによって
1629    指定されたタイムアウト値が使われます。</p>
1630
1631    <p><code class="directive">KeepAliveTimeout</code> を大きな値に設定すると、
1632    負荷の高いサーバにおいてはパフォーマンスの問題を引き起こす場合があります。
1633    タイムアウトが長ければ長いほど、より多くのサーバプロセスが
1634    活発でないクライアントからの接続の終了を待ち続けることになります。</p>
1635
1636</div>
1637<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1638<div class="directive-section"><h2><a name="Limit" id="Limit">&lt;Limit&gt;</a> <a name="limit" id="limit">ディレクティブ</a></h2>
1639<table class="directive">
1640<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>囲いの中にあるアクセス制御の適用を特定の HTTP メソッドのみに
1641制限する</td></tr>
1642<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>&lt;Limit <var>method</var> [<var>method</var>] ... &gt; ...
1643    &lt;/Limit&gt;</code></td></tr>
1644<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
1645<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
1646<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1647<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1648</table>
1649    <p>アクセス制御は、通常<strong>全ての</strong>アクセスメソッドに対して
1650    影響し、普通はこれが望ましい挙動です。
1651    <strong>そうしたことから、大部分の場合にはアクセス制御に関わるディレクティブを
1652    <code class="directive">&lt;Limit&gt;</code> セクション内に
1653    書くべきではありません。 </strong></p>
1654
1655    <p><code class="directive">&lt;Limit&gt;</code> ディレクティブの
1656    目的は、アクセス制御の範囲を
1657    指定された HTTP メソッドに限定するためです。
1658    それ以外のメソッドは、<code class="directive">&lt;Limit&gt;</code> で囲われたアクセス制御の
1659    <strong>影響を受けません</strong>。
1660    以下の例は、<code>POST</code>, <code>PUT</code>, <code>DELETE</code> のメソッドに対してのみアクセスの制御を行ない、
1661    それ以外のメソッドについては制限しません:</p>
1662
1663    <div class="example"><p><code>
1664      &lt;Limit POST PUT DELETE&gt;<br />
1665      <span class="indent">
1666        Require valid-user<br />
1667      </span>
1668      &lt;/Limit&gt;
1669    </code></p></div>
1670
1671    <p>メソッド名には以下の中から一つ以上を列挙することができます:
1672    <code>GET</code>,
1673    <code>POST</code>, <code>PUT</code>, <code>DELETE</code>,
1674    <code>CONNECT</code>, <code>OPTIONS</code>,
1675    <code>PATCH</code>, <code>PROPFIND</code>, <code>PROPPATCH</code>,
1676    <code>MKCOL</code>, <code>COPY</code>, <code>MOVE</code>,
1677    <code>LOCK</code>, <code>UNLOCK</code>. <strong>メソッド名は
1678    大文字小文字を区別します。</strong> <code>GET</code> を指定した場合には
1679    <code>HEAD</code> リクエストにも制限がかかります。<code>TRACE</code>
1680    メソッドに制限をかけることはできません。</p>
1681
1682    <div class="warning">アクセス制御が目的の場合は
1683    <code class="directive"><a href="#limit">&lt;Limit&gt;</a></code> 
1684    セクションの代わりに <code class="directive"><a href="#limitexcept">&lt;LimitExcept&gt;</a></code> セクションを使用した方が良いでしょう。
1685    <code class="directive"><a href="#limitexcept">&lt;LimitExcept&gt;</a></code>
1686    セクションでは不特定のメソッドに対しても防御できるからです。</div>
1687
1688
1689</div>
1690<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1691<div class="directive-section"><h2><a name="LimitExcept" id="LimitExcept">&lt;LimitExcept&gt;</a> <a name="limitexcept" id="limitexcept">ディレクティブ</a></h2>
1692<table class="directive">
1693<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>指定されたもの以外の HTTP メソッドにアクセス制御を
1694制限する</td></tr>
1695<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>&lt;LimitExcept <var>method</var> [<var>method</var>] ... &gt; ...
1696    &lt;/LimitExcept&gt;</code></td></tr>
1697<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
1698<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
1699<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1700<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1701</table>
1702    <p><code class="directive">&lt;LimitExcept&gt;</code> と
1703    <code>&lt;/LimitExcept&gt;</code> は、引数に
1704    <strong>含まれていない</strong>
1705    HTTP のアクセスメソッドに適用するためのアクセス制御
1706    ディレクティブを括るために利用します。
1707    つまり、<code class="directive"><a href="#limit">&lt;Limit&gt;</a></code> セクションの反対の動作をし、
1708    標準のメソッドと標準外や未認識のメソッドの場合の両方を設定できます。
1709    <code class="directive"><a href="#limit">&lt;Limit&gt;</a></code> のドキュメントも
1710    併せて参照してください。</p>
1711
1712    <p>例:</p>
1713
1714    <div class="example"><p><code>
1715      &lt;LimitExcept POST GET&gt;<br />
1716      <span class="indent">
1717        Require valid-user<br />
1718      </span>
1719      &lt;/LimitExcept&gt;
1720    </code></p></div>
1721
1722
1723</div>
1724<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1725<div class="directive-section"><h2><a name="LimitInternalRecursion" id="LimitInternalRecursion">LimitInternalRecursion</a> <a name="limitinternalrecursion" id="limitinternalrecursion">ディレクティブ</a></h2>
1726<table class="directive">
1727<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>内部リダイレクトと入れ子になったサブリクエストの最大数を決定する</td></tr>
1728<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitInternalRecursion <var>number</var> [<var>number</var>]</code></td></tr>
1729<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitInternalRecursion 10</code></td></tr>
1730<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
1731<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1732<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1733<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0.47 以降で使用可能</td></tr>
1734</table>
1735    <p>内部リダイレクトは例えば <code class="directive">Action</code> ディレクティブを
1736    使っているときに起こります。<code class="directive">Action</code> ディレクティブは
1737    元々のリクエストを CGI スクリプトに内部リダイレクトを行ないます。
1738    サブリクエストはいくつかの URI に対して、リクエストされたときに
1739    何が起こるかを調べるための Apache の機構です。例えば、<code class="module"><a href="/mod/mod_dir.html">mod_dir</a></code>
1740    は <code class="directive"><a href="/mod/mod_dir.html#directoryindex">DirectoryIndex</a></code> ディレクティブ
1741    がリストするファイルを調べるためにサブリクエストを使います。</p>
1742
1743    <p><code class="directive">LimitInternalRecursion</code> は内部リダイレクトや
1744    サブリクエストが無限ループに陥ったときのサーバクラッシュを防ぎます。
1745    普通、そのようなループは設定に失敗したときに発生します。</p>
1746
1747    <p>このディレクティブは、リクエスト毎に評価される、二つの違う限界値を
1748    設定します。最初の <var>number</var> は、起こり得る
1749    内部リクエストの最大値を設定します。二つめの <var>number</var> は
1750    サブリクエストが入れ子にできる深さを設定します。<var>number</var> を
1751    一つだけ指定したときは、両方の限界値にその値が設定されます。</p>
1752
1753    <div class="example"><h3>例</h3><p><code>
1754      LimitInternalRecursion 5
1755    </code></p></div>
1756
1757</div>
1758<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1759<div class="directive-section"><h2><a name="LimitRequestBody" id="LimitRequestBody">LimitRequestBody</a> <a name="limitrequestbody" id="limitrequestbody">ディレクティブ</a></h2>
1760<table class="directive">
1761<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントから送られる HTTP リクエストのボディの
1762総量を制限する</td></tr>
1763<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitRequestBody <var>bytes</var></code></td></tr>
1764<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitRequestBody 0</code></td></tr>
1765<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
1766<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
1767<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1768<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1769</table>
1770    <p>このディレクティブは、リクエストボディに許されるバイト数、<var>bytes</var>
1771    を 0 (無制限を意味します) から 2147483647 (2GB) までの数値で指定します。</p>
1772
1773    <p><code class="directive">LimitRequestBody</code> ディレクティブは、
1774    ディレクティブが書かれたコンテキスト
1775    (サーバ全体、ディレクトリ、ファイル、ロケーション) 内で
1776    許容する  HTTP リクエストメッセージボディのサイズに制限をかけることができます。
1777    クライアントのリクエストがその制限値を越えていれば、
1778    サーバはリクエストを処理せずにエラーを返します。
1779    普通のリクエストメッセージボディのサイズは、リソースの種類や
1780    許可されているメソッドによって大きく変わります。
1781    CGI スクリプトは、よく情報を受信するために
1782    メッセージボディを使います。
1783    <code>PUT</code> メソッドの実装は、このディレクティブの値として
1784    少なくともあるリソースに対してサーバが受け付けようとする
1785    表現の大きさほどの値を必要とします。</p>
1786
1787    <p>このディレクティブは、
1788    管理者にクライアントからの異常なリクエストを制御できるようにし、
1789    何らかの形のサービス拒否攻撃 (訳注:DoS) を避けるのに有効です。</p>
1790
1791    <p>ある場所へのファイルアップロードを許可する場合に、
1792    アップロードできるファイルのサイズを 100K に制限したければ、
1793    以下のように指定します:</p>
1794
1795    <div class="example"><p><code>
1796      LimitRequestBody 102400
1797    </code></p></div>
1798
1799
1800</div>
1801<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1802<div class="directive-section"><h2><a name="LimitRequestFields" id="LimitRequestFields">LimitRequestFields</a> <a name="limitrequestfields" id="limitrequestfields">ディレクティブ</a></h2>
1803<table class="directive">
1804<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントからの HTTP リクエストのヘッダフィールドの数を
1805制限する</td></tr>
1806<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitRequestFields <var>number</var></code></td></tr>
1807<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitRequestFields 100</code></td></tr>
1808<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
1809<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1810<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1811</table>
1812    <p><var>number</var> には、0 (無制限を意味します) から 32767
1813    までの整数を指定します。
1814    デフォルト値は、定数 <code>DEFAULT_LIMIT_REQUEST_FIELDS</code>
1815    によりコンパイル時に定義されます (配布時には 100 と指定されています)。</p>
1816
1817    <p><code class="directive">LimitRequestBody</code> ディレクティブは、
1818    サーバ管理者が HTTP リクエスト中において許可するリクエストヘッダフィールド数を
1819    指定します。
1820    サーバはこの値には通常のクライアントからのリクエストに含まれるであろう
1821    フィールドの数より大きな値が必要とします。
1822    クライアントにより使われた要求ヘッダーフィールドの数が
1823    20 を超えることはほとんどありませんが、
1824    これは種々のクライアントの実装によって変わり、
1825    詳細なコンテントネゴシエーションをするためのブラウザの設定までにも
1826    影響されることがあります。
1827    オプションの HTTP 拡張はリクエストヘッダフィールドを使って表される場合が
1828    多くあります。</p>
1829
1830    <p>このディレクティブは、
1831    管理者にクライアントからの異常なリクエストを制御できるようにし、
1832    何らかの形のサービス拒否攻撃 (訳注:DoS) を避けるのに有効です。
1833    リクエストのフィールドが多過ぎることを意味するエラー応答が
1834    普通のクライアントに返されるような時はこの値を増やしてください。</p>
1835
1836    <p>例:</p>
1837
1838    <div class="example"><p><code>
1839      LimitRequestFields 50
1840    </code></p></div>
1841
1842
1843</div>
1844<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1845<div class="directive-section"><h2><a name="LimitRequestFieldSize" id="LimitRequestFieldSize">LimitRequestFieldSize</a> <a name="limitrequestfieldsize" id="limitrequestfieldsize">ディレクティブ</a></h2>
1846<table class="directive">
1847<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントからの HTTP リクエストのヘッダの
1848サイズを制限する</td></tr>
1849<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitRequestFieldSize <var>bytes</var></code></td></tr>
1850<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitRequestFieldSize 8190</code></td></tr>
1851<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
1852<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1853<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1854</table>
1855    <p>このディレクティブは、HTTP リクエストヘッダ一つで受付ける
1856    バイト数 <var>bytes</var> を指定します。</p>
1857
1858    <p><code class="directive">LimitRequestFieldSize</code> ディレクティブは、
1859    HTTP リクエストヘッダで許容されるサイズを増減させることができます。
1860    サーバは、このディレクティブの値として、
1861    一般的なクライアントからリクエストが送られた際に、そのリクエストに
1862    付属しているどのヘッダフィールドについても、
1863    十分足りる大きさになっていなければなりません。
1864    一般的なリクエストヘッダのサイズといっても、その大きさは個々の
1865    クライアントの実装によって大きく異なり、
1866    詳細なコンテントネゴシエーションをサポートするかどうかの、
1867    ブラウザの設定にも影響されたりします。
1868    SPNEGO 認証ヘッダでは 12392 バイトにまで及ぶことすらあります。</p>
1869
1870    <p>このディレクティブは、
1871    管理者にクライアントからの異常なリクエストを制御できるようにし、
1872    何らかの形のサービス拒否攻撃 (訳注:DoS) を避けるのに有効です。</p>
1873
1874    <p>例:</p>
1875
1876    <div class="example"><p><code>
1877      LimitRequestFieldSize 4094
1878    </code></p></div>
1879
1880    <div class="note">通常はデフォルトから変更する必要はありません。</div>
1881
1882
1883</div>
1884<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1885<div class="directive-section"><h2><a name="LimitRequestLine" id="LimitRequestLine">LimitRequestLine</a> <a name="limitrequestline" id="limitrequestline">ディレクティブ</a></h2>
1886<table class="directive">
1887<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントからの HTTP リクエスト行のサイズを制限する</td></tr>
1888<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitRequestLine <var>bytes</var></code></td></tr>
1889<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitRequestLine 8190</code></td></tr>
1890<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
1891<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1892<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1893</table>
1894    <p>このディレクティブは、HTTP リクエスト行内で許容されるバイト数
1895    <var>bytes</var> を指定します。</p>
1896
1897    <p><code class="directive">LimitRequestLine</code> ディレクティブにより、
1898    クライアントからの HTTP リクエスト行の許容サイズを増減できます。 
1899    リクエスト行は、HTTPメソッド、URI、プロトコルバージョンから成っており、
1900    <code class="directive">LimitRequestLine</code> はサーバへのリクエストに対して
1901    許容するリクエスト URI の長さを制限することになります。
1902    サーバは、<code>GET</code> リクエストのクエリ部分も含めて、リソースの名前が入るに足る
1903    大きさを必要とします。</p>
1904
1905    <p>このディレクティブは、
1906    管理者にクライアントからの異常なリクエストを制御できるようにし、
1907    何らかの形のサービス拒否攻撃 (訳注:DoS) を避けるのに有効です。</p>
1908
1909    <p>例:</p>
1910
1911    <div class="example"><p><code>
1912      LimitRequestLine 4094
1913    </code></p></div>
1914
1915    <div class="note">通常はデフォルトから変更する必要はありません。</div>
1916
1917</div>
1918<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1919<div class="directive-section"><h2><a name="LimitXMLRequestBody" id="LimitXMLRequestBody">LimitXMLRequestBody</a> <a name="limitxmlrequestbody" id="limitxmlrequestbody">ディレクティブ</a></h2>
1920<table class="directive">
1921<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>XML 形式のリクエストのボディのサイズを制限する</td></tr>
1922<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitXMLRequestBody <var>bytes</var></code></td></tr>
1923<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitXMLRequestBody 1000000</code></td></tr>
1924<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
1925<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
1926<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1927<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1928</table>
1929    <p>XML 形式のリクエストのボディの最大値を (バイト単位で) 制限します。
1930    値に <code>0</code> を指定するとチェックを無効にします。</p>
1931
1932    <p>例:</p>
1933
1934    <div class="example"><p><code>
1935    LimitXMLRequestBody 0
1936    </code></p></div>
1937
1938
1939</div>
1940<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1941<div class="directive-section"><h2><a name="Location" id="Location">&lt;Location&gt;</a> <a name="location" id="location">ディレクティブ</a></h2>
1942<table class="directive">
1943<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>囲んだディレクティブをマッチする URL のみに適用</td></tr>
1944<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>&lt;Location
1945    <var>URL-path</var>|<var>URL</var>&gt; ... &lt;/Location&gt;</code></td></tr>
1946<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
1947<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
1948<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
1949</table>
1950    <p><code class="directive">&lt;Location&gt;</code> ディレクティブは、
1951    URL により中に書かれたディレクティブの適用範囲を制限します。
1952    <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code>
1953    ディレクティブと似ていて、
1954    <code>&lt;/Location&gt;</code> ディレクティブで終了する
1955    サブセクションを開始します。
1956    <code class="directive">&lt;Location&gt;</code> セクションは、
1957    <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> セクションと
1958    <code>.htaccess</code> の読み込みの後、
1959    <code class="directive"><a href="#files">&lt;Files&gt;</a></code> セクションを
1960    適用した後に、設定ファイルに現れた順に処理されます。</p>
1961
1962    <p><code class="directive">&lt;Location&gt;</code> セクションは
1963    完全にファイルシステムと関連せずに動作します。このことから導かれる
1964    結果にはいくつか注意する点があります。最も重要なものは、
1965    ファイルシステムの位置へのアクセス制御に <code class="directive">&lt;Location&gt;</code> ディレクティブを使うべきではない
1966    ということです。複数の URL がファイルシステムの同じ位置にマップされる
1967    可能がありますので、そのようなアクセス制御は回避されてしまう可能性が
1968    あります。</p>
1969
1970    <div class="note"><h3>いつ <code class="directive">&lt;Location&gt;</code> を使うか</h3>
1971
1972    <p><code class="directive">&lt;Location&gt;</code> ディレクティブは
1973    ファイルシステム外のコンテンツにディレクティブを適用するときに
1974    使用してください。ファイルシステムに存在するコンテンツに対しては、
1975    <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> と <code class="directive"><a href="#files">&lt;Files&gt;</a></code> を使ってください。
1976    例外は、<code>&lt;Location /&gt;</code> で、これはサーバ全体に対して
1977    設定を適用する簡単な方法です。</p>
1978    </div>
1979
1980    <p>全ての (プロキシ以外の) リクエストに対し、
1981    URL は <code>/path/</code> という、
1982    接頭辞 <code>http://servername</code> を含まない形でマッチします。
1983    プロキシリクエストの場合には、<code>scheme://servername/path</code>
1984    という接頭辞を含む形でマッチし、接頭辞を含めて指定する必要があります。</p>
1985
1986    <p>URL にはワイルドカードを利用することができます。
1987    <code>?</code> は任意の一文字、<code>*</code> は任意の文字列にマッチします。
1988    どちらのワイルドカード文字も URL-path の / にはマッチしません。</p>
1989
1990    <p><code>~</code> という文字を追加することで、<a class="glossarylink" href="/glossary.html#regex" title="用語集を参照">正規表現</a>を
1991    利用することもできます。
1992    例えば:</p>
1993
1994    <div class="example"><p><code>
1995      &lt;Location ~ "/(extra|special)/data"&gt;
1996    </code></p></div>
1997
1998    <p>は URL に <code>/extra/data</code> か <code>/special/data</code> という文字列が
1999    含まれている場合にマッチします。
2000   <code class="directive"><a href="#locationmatch">&lt;LocationMatch&gt;</a></code> ディレクティブは
2001    <code class="directive">&lt;Location&gt;</code> の正規表現
2002    版とまったく同じ動作をします。</p>
2003
2004    <p><code class="directive">&lt;Location&gt;</code> 機能は、<code class="directive"><a href="#sethandler">SetHandler</a></code> ディレクティブと
2005    組合わせて利用すると特に便利です。
2006    例えば、<code>foo.com</code> のブラウザからのみステータスの参照を有効にしたければ、
2007    次のようにすれば良いでしょう。</p>
2008
2009    <div class="example"><p><code>
2010      &lt;Location /status&gt;<br />
2011      <span class="indent">
2012        SetHandler server-status<br />
2013        Order Deny,Allow<br />
2014        Deny from all<br />
2015        Allow from .foo.com<br />
2016      </span>
2017      &lt;/Location&gt;
2018    </code></p></div>
2019
2020<div class="note"><h3>/ (スラッシュ) に関する注</h3>
2021    <p>スラッシュ文字は、URL 内に現れる場所に応じて変化する
2022    特別な意味を持っています。
2023    ファイルシステムにおいて利用する場合には複数のスラッシュでも一つの
2024    スラッシュとして扱われることが多いですが、
2025    (<em>すなわち</em>、<code>/home///foo</code> は
2026    <code>/home/foo</code> と同じといったように)
2027    URL においては必ずしもそうなるわけではありません。
2028    <code class="directive"><a href="#locationmatch">&lt;LocationMatch&gt;</a></code>
2029    ディレクティブや正規表現を利用した
2030    <code class="directive">&lt;Location&gt;</code> ディレクティブで、
2031    複数のスラッシュにマッチさせたいときには、明示的に記述する
2032    必要があります。</p>
2033
2034    <p>例えば、<code>&lt;LocationMatch ^/abc&gt;</code> は、
2035    <code>/abc</code> というリクエスト URL にマッチしますが、
2036    <code>//abc</code> というリクエスト URL にはマッチしません。
2037    (正規表現でない) <code class="directive">&lt;Location&gt;</code>
2038    ディレクティブは、
2039    proxy リクエストに対して利用する際には同様の振る舞いをしますが、
2040    (正規表現でない) <code class="directive">&lt;Location&gt;</code> を proxy
2041    でないリクエストに対して利用する際には、
2042    一つのスラッシュで複数のスラッシュにマッチします。
2043    例えば、<code>&lt;Location /abc/def&gt;</code> と指定し、
2044    <code>/abc//def</code> というリクエストがあれば、
2045    マッチすることになります。</p></div>
2046
2047
2048<h3>参照</h3>
2049<ul>
2050<li>リクエストを受けた際にこれらの異なるセクションが
2051    組み合わされる方法については <a href="/sections.html">
2052    &lt;Directory&gt;, &lt;Location&gt;, &lt;Files&gt; セクションの動作法</a></li>
2053</ul>
2054</div>
2055<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2056<div class="directive-section"><h2><a name="LocationMatch" id="LocationMatch">&lt;LocationMatch&gt;</a> <a name="locationmatch" id="locationmatch">ディレクティブ</a></h2>
2057<table class="directive">
2058<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>囲んだディレクティブを正規表現にマッチする URL のみに
2059適用</td></tr>
2060<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>&lt;LocationMatch
2061    <var>regex</var>&gt; ... &lt;/LocationMatch&gt;</code></td></tr>
2062<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
2063<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2064<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2065</table>
2066    <p><code class="directive">&lt;LocationMatch&gt;</code> ディレクティブは、
2067    <code class="directive"><a href="#location">&lt;Location&gt;</a></code> と同じ様に
2068    URL により中に書かれたディレクティブの適用範囲を制限します。
2069    但し、引数は普通の文字列ではなく、<a class="glossarylink" href="/glossary.html#regex" title="用語集を参照">正規表現</a>となります。
2070    例えば、</p>
2071
2072    <div class="example"><p><code>
2073      &lt;LocationMatch "/(extra|special)/data"&gt;
2074    </code></p></div>
2075
2076    <p>は URL に <code>/extra/data</code> か <code>/special/data</code>
2077    という文字列が含まれている場合にマッチします。</p>
2078
2079<h3>参照</h3>
2080<ul>
2081<li>リクエストを受けた際にこれらの異なるセクションが
2082    組み合わされる方法については <a href="/sections.html">
2083    &lt;Directory&gt;, &lt;Location&gt;, &lt;Files&gt; セクションの動作法</a></li>
2084</ul>
2085</div>
2086<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2087<div class="directive-section"><h2><a name="LogLevel" id="LogLevel">LogLevel</a> <a name="loglevel" id="loglevel">ディレクティブ</a></h2>
2088<table class="directive">
2089<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ErrorLog の冗長性を制御する</td></tr>
2090<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LogLevel <var>level</var></code></td></tr>
2091<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LogLevel warn</code></td></tr>
2092<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
2093<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2094<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2095</table>
2096    <p><code class="directive">LogLevel</code> は、エラーログ (<code class="directive"><a href="#errorlog">ErrorLog</a></code> ディレクティブを
2097    見てください) へ記録するメッセージの冗長性を調整します。
2098    以下の <var>level</var> を指定でき、順に重要度が下がっていきます。</p>
2099
2100    <table class="bordered">
2101      <tr>
2102        <th><strong>レベル</strong> </th>
2103
2104        <th><strong>説明</strong> </th>
2105
2106        <th><strong>例</strong> </th>
2107      </tr>
2108
2109      <tr>
2110        <td><code>emerg</code> </td>
2111
2112        <td>緊急 - システムが利用できない</td>
2113
2114        <td>Child cannot open lock file. Exiting 
2115        (子プロセスがロックファイルを開けないため終了した)</td>
2116      </tr>
2117
2118      <tr>
2119        <td><code>alert</code> </td>
2120
2121        <td>直ちに対処が必要</td>
2122
2123        <td>getpwuid: couldn't determine user name from uid
2124        (getpwuid: UID からユーザ名を特定できなかった)</td>
2125      </tr>
2126
2127      <tr>
2128        <td><code>crit</code> </td>
2129
2130        <td>致命的な状態</td>
2131
2132        <td>socket: Failed to get a socket, exiting child
2133        (socket: ソケットが得られないため、子プロセスを終了させた)</td>
2134      </tr>
2135
2136      <tr>
2137        <td><code>error</code> </td>
2138
2139        <td>エラー</td>
2140
2141        <td>Premature end of script headers
2142        (スクリプトのヘッダが足りないままで終わった)</td>
2143      </tr>
2144
2145      <tr>
2146        <td><code>warn</code> </td>
2147
2148        <td>警告</td>
2149
2150        <td>child process 1234 did not exit, sending another SIGHUP
2151        (子プロセス 1234 が終了しなかった。もう一度 SIGHUP を送る)</td>
2152      </tr>
2153
2154      <tr>
2155        <td><code>notice</code> </td>
2156
2157        <td>普通だが、重要な情報</td>
2158
2159        <td>httpd: caught SIGBUS, attempting to dump core in ...
2160        (httpd: SIGBUS シグナルを受け、... へコアダンプをした)</td>
2161      </tr>
2162
2163      <tr>
2164        <td><code>info</code> </td>
2165
2166        <td>追加情報</td>
2167
2168        <td>"Server seems busy, (you may need to increase
2169        StartServers, or Min/MaxSpareServers)..." (「サーバは負荷が高い、
2170        (StartServers や Min/MaxSpareServers の値を増やす必要があるかも)」)</td>
2171      </tr>
2172
2173      <tr>
2174        <td><code>debug</code> </td>
2175
2176        <td>デバッグメッセージ</td>
2177
2178        <td>"Opening config file ..." (設定ファイルを開いている...)</td>
2179      </tr>
2180    </table>
2181
2182    <p>特定のレベルが指定された場合、それより高いレベルの全てのメッセージが
2183    報告されます。
2184    <em>例えば</em>、<code>LogLevel info</code> に指定すると、
2185    <code>notice</code> と <code>warn</code> も報告されます。</p>
2186
2187    <p>なお <code>crit</code> 以上のレベルを指定することが推奨されます。</p>
2188
2189    <p>例:</p>
2190
2191    <div class="example"><p><code>
2192      LogLevel notice
2193    </code></p></div>
2194
2195    <div class="note"><h3>注</h3>
2196      <p>ファイルにログを出力する場合、<code>notice</code>
2197      レベルのメッセージは抑制されず、すべてログに出力されます。
2198      しかし <code>syslog</code> を使用している場合は、
2199      これは当てはまりません。</p>
2200    </div>
2201
2202</div>
2203<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2204<div class="directive-section"><h2><a name="MaxKeepAliveRequests" id="MaxKeepAliveRequests">MaxKeepAliveRequests</a> <a name="maxkeepaliverequests" id="maxkeepaliverequests">ディレクティブ</a></h2>
2205<table class="directive">
2206<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>持続的な接続上で許可されるリクエストの数</td></tr>
2207<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>MaxKeepAliveRequests <var>number</var></code></td></tr>
2208<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>MaxKeepAliveRequests 100</code></td></tr>
2209<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
2210<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2211<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2212</table>
2213    <p><code class="directive">MaxKeepAliveRequests</code> ディレクティブは、
2214    <code class="directive"><a href="#keepalive">KeepAlive</a></code> が有効な場合に、
2215    一回の接続で受け付け可能なリクエストの数を制限します。
2216    <code>0</code> に設定していれば、受け付けるリクエストは無制限になります。
2217    この設定は、サーバ性能を向上させるために、大きな数値を指定すること勧めます。
2218    </p>
2219
2220    <p>例:</p>
2221
2222    <div class="example"><p><code>
2223      MaxKeepAliveRequests 500
2224    </code></p></div>
2225
2226</div>
2227<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2228<div class="directive-section"><h2><a name="MaxRanges" id="MaxRanges">MaxRanges</a> <a name="maxranges" id="maxranges">ディレクティブ</a></h2>
2229<table class="directive">
2230<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Number of ranges allowed before returning the complete
2231resource </td></tr>
2232<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>MaxRanges default | unlimited | none | <var>number-of-ranges</var></code></td></tr>
2233<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>MaxRanges 200</code></td></tr>
2234<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ</td></tr>
2235<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2236<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2237<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Available in Apache HTTP Server 2.2.21 and later</td></tr>
2238</table><p>このディレクティブの解説文書は
2239            まだ翻訳されていません。英語版をご覧ください。
2240            </p></div>
2241<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2242<div class="directive-section"><h2><a name="NameVirtualHost" id="NameVirtualHost">NameVirtualHost</a> <a name="namevirtualhost" id="namevirtualhost">ディレクティブ</a></h2>
2243<table class="directive">
2244<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>名前ベースのバーチャルホストのための IP アドレスを指定</td></tr>
2245<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>NameVirtualHost <var>addr</var>[:<var>port</var>]</code></td></tr>
2246<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
2247<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2248<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2249</table>
2250    <p><code class="directive">NameVirtualHost</code> ディレクティブは、
2251    <a href="/vhosts/">名前ベースのバーチャルホスト</a>の設定を行ないたい場合に
2252    必要となるものです。</p>
2253
2254    <p><var>addr</var> にはホスト名を指定できますが、
2255    常に IP アドレスを指定するのが推奨されます。
2256    例えば、</p>
2257
2258    <div class="example"><p><code>
2259      NameVirtualHost 111.22.33.44
2260    </code></p></div>
2261
2262    <p><code class="directive">NameVirtualHost</code> ディレクティブは、
2263    名前ベースのバーチャルホストを
2264    利用してリクエストを受け付ける IP アドレスを指定します。
2265    これは、普通は名前ベースのバーチャルホストアドレスです。
2266    ただし、ファイアーウォールや他のプロキシがリクエストを受け付け、
2267    違う IP アドレスのサーバにフォワードするという場合は、
2268    リクエストを提供したいマシン上の物理インターフェースの
2269    IP アドレスを指定する必要があります。
2270    複数のアドレスで複数の名前ベースのバーチャルホストを指定する場合は
2271    各アドレスに対してディレクティブを書いてください。</p>
2272
2273    <div class="note"><h3>中</h3>
2274      <p>「主サーバ」や、どの <code>_default_</code> サーバも、
2275      <code class="directive">NameVirtualHost</code> で指定した IP アドレスへのリクエスト
2276      を処理することは<strong>ありません</strong> (なぜか
2277      <code class="directive">NameVirtualHost</code> を
2278      指定したけどそのアドレスに <code class="directive">VirtualHost</code> を定義しなかった場合を除く)。</p>
2279    </div>
2280
2281    <p>名前ベースのバーチャルホストにポート番号を指定することも可能です。
2282    例えば</p>
2283
2284    <div class="example"><p><code>
2285      NameVirtualHost 111.22.33.44:8080
2286    </code></p></div>
2287
2288    <p>IPV6 のアドレスは次の例のように角括弧で囲む必要があります:</p>
2289 
2290    <div class="example"><p><code>
2291      NameVirtualHost [2001:db8::a00:20ff:fea7:ccea]:8080
2292    </code></p></div>
2293
2294    <p>すべてのインタフェースへのリクエストを受け取るようにするためには、
2295    引数として <code>*</code> を使います。</p>
2296
2297    <div class="example"><p><code>
2298      NameVirtualHost *
2299    </code></p></div>
2300
2301    <div class="note"><h3><code class="directive">&lt;VirtualHost&gt;</code> ディレクティブの引数</h3>
2302      <p><code class="directive">&lt;VirtualHost&gt;</code> ディレクティブの引数は <code class="directive">NameVirtualHost</code> ディレクティブの引数に正確に
2303      合っている必要があることに注意してください。</p>
2304
2305      <div class="example"><p><code>
2306        NameVirtualHost 1.2.3.4<br />
2307        &lt;VirtualHost 1.2.3.4&gt;<br />
2308        # ...<br />
2309        &lt;/VirtualHost&gt;<br />
2310      </code></p></div>
2311    </div>
2312
2313
2314<h3>参照</h3>
2315<ul>
2316<li><a href="/vhosts/">バーチャルホスト説明書
2317</a></li>
2318</ul>
2319</div>
2320<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2321<div class="directive-section"><h2><a name="Options" id="Options">Options</a> <a name="options" id="options">ディレクティブ</a></h2>
2322<table class="directive">
2323<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ディレクトリに対して使用可能な機能を設定する</td></tr>
2324<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Options
2325    [+|-]<var>option</var> [[+|-]<var>option</var>] ...</code></td></tr>
2326<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>Options All</code></td></tr>
2327<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
2328<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>Options</td></tr>
2329<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2330<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2331</table>
2332    <p><code class="directive">Options</code> ディレクティブは、特定のディレクトリに対して
2333    どの機能が使用可能かを制御します。</p>
2334
2335    <p><var>option</var> を <code>None</code>に指定すると、
2336    特別な機能は全て無効になります。
2337    また、以下の示す 1 個以上のものを指定できます。</p>
2338
2339    <dl>
2340      <dt><code>All</code></dt>
2341
2342      <dd><code>MultiViews</code> を除いた全ての機能が有効となります。
2343      これがデフォルトです。</dd>
2344
2345      <dt><code>ExecCGI</code></dt>
2346
2347      <dd>
2348      <code class="module"><a href="/mod/mod_cgi.html">mod_cgi</a></code> による CGI スクリプトの実行を許可します。</dd>
2349
2350      <dt><code>FollowSymLinks</code></dt>
2351
2352      <dd>
2353      サーバが、このディレクトリ内でシンボリックリンクをたどれるようにします。
2354      <div class="note"><p>サーバがシンボリックリンクをたどる場合でも、
2355      <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code> セクションに
2356      マッチさせるための
2357      パス名は<em>変更されません</em>。</p>
2358      <p><code class="directive"><a href="#location">&lt;Location&gt;</a></code> 内に
2359      このオプションを指定しても<strong>無視される</strong>ことに
2360      注意してください。</p>
2361      <p>このオプションを省略したからといってセキュリティの強化にはなりません。
2362      なぜなら symlink の検査はレースコンディションを引き起こす可能性があり、
2363      そのため回避可能になるからです。</p>
2364      </div></dd>
2365
2366      <dt><code>Includes</code></dt>
2367
2368      <dd>
2369      <code class="module"><a href="/mod/mod_include.html">mod_include</a></code> が提供する SSI を有効にします。</dd>
2370
2371      <dt><code>IncludesNOEXEC</code></dt>
2372
2373      <dd>
2374      SSI は有効になりますが、<code>#exec</code> コマンド と <code>#exec CGI</code> は無効になります。
2375      ただし、<code>#include virtual</code> により、<code class="directive"><a href="/mod/mod_alias.html#scriptalias">ScriptAlias</a></code> されたディレクトリで
2376      CGI を実行することは可能です。</dd>
2377
2378      <dt><code>Indexes</code></dt>
2379
2380      <dd>
2381      もし、URL がディレクトリにマップするリクエストであって、
2382      且つ <code class="directive"><a href="/mod/mod_dir.html#directoryindex">DirectoryIndex</a></code> で指定したファイル (例えば、<code>index.html</code>) が
2383      ディレクトリ内に無ければ、<code class="module"><a href="/mod/mod_autoindex.html">mod_autoindex</a></code> が
2384      ディレクトリ内の一覧を整形して返します。</dd>
2385
2386      <dt><code>MultiViews</code></dt>
2387
2388      <dd>
2389      <code class="module"><a href="/mod/mod_negotiation.html">mod_negotiation</a></code> による
2390      <a href="/content-negotiation.html">コンテントネゴシエーション</a> 
2391      された "MultiViews" を許可します。</dd>
2392
2393      <dt><code>SymLinksIfOwnerMatch</code></dt>
2394
2395      <dd>
2396      シンボリック先のファイルまたはディレクトリが、
2397      シンボリックリンクの所有ユーザ ID と同じ場合にのみシンボリックリンクを
2398      たどれるようにします。
2399
2400      <div class="note"><h3>注</h3> <p><code class="directive"><a href="#location">&lt;Location&gt;</a></code> 内にこのオプションを
2401      指定しても無視されます。</p>
2402      <p>このオプションはセキュリティの強化にはなりません。
2403      なぜなら symlink の検査はレースコンディションを引き起こす可能性があり、
2404      そのため回避可能になるからです。</p>
2405      </div>
2406      </dd>
2407    </dl>
2408
2409    <p>通常、ディレクトリに対して複数の <code class="directive">Options</code> が
2410    適用可能な場合、
2411    最も近いもの一つのみが適用され、他のものは無視されます。
2412    複数の指定がマージされるわけではありません。(<a href="/sections.html#mergin">セクションのマージ方法</a>を参照してください。)
2413    しかし、すべての <code class="directive">Options</code> ディレクティブが <code>+</code> や <code>-</code> 付きで
2414    指定された場合はオプションの値はマージされます。
2415    <code>+</code> を頭につければ現在の設定に加えられ、
2416    <code>-</code> を付ければ現在の設定から削除されます。</p>
2417
2418    <div class="warning"><h3>警告</h3>
2419    <p><code class="directive">Options</code> で指定する際に、
2420    <code>+</code> や <code>-</code> のついたものと、ついていないものを
2421    混ぜて指定する記述は誤った構文で、予期しない結果になるかもしれません。
2422    </p>
2423    </div>
2424
2425    <p>例えば、<code>+</code> や <code>-</code> を利用しない場合は:</p>
2426
2427    <div class="example"><p><code>
2428      &lt;Directory /web/docs&gt;<br />
2429      <span class="indent">
2430        Options Indexes FollowSymLinks<br />
2431      </span>
2432      &lt;/Directory&gt;<br />
2433      <br />
2434      &lt;Directory /web/docs/spec&gt;<br />
2435      <span class="indent">
2436        Options Includes<br />
2437      </span>
2438      &lt;/Directory&gt;
2439    </code></p></div>
2440
2441    <p><code>/web/docs/spec</code> というディレクトリには、
2442    <code>Includes</code> だけが適用されます。
2443    しかし、2 番目の <code class="directive">Options</code> で <code>+</code> や <code>-</code> を利用してみると:</p>
2444 
2445    <div class="example"><p><code>
2446      &lt;Directory /web/docs&gt;<br />
2447      <span class="indent">
2448        Options Indexes FollowSymLinks<br />
2449      </span>
2450      &lt;/Directory&gt;<br />
2451      <br />
2452      &lt;Directory /web/docs/spec&gt;<br />
2453      <span class="indent">
2454        Options +Includes -Indexes<br />
2455      </span>
2456      &lt;/Directory&gt;
2457    </code></p></div>
2458
2459    <p><code>/web/docs/spec</code> というディレクトリには、 <code>FollowSymLinks</code> と
2460    <code>Includes</code> が適用されます。</p>
2461
2462    <div class="note"><h3>注</h3>
2463      <p><code>-IncludesNOEXEC</code> もしくは
2464      <code>-Includes</code> を指定すると、
2465      前の設定がどのようになっていようとも SSI は無効となります。</p>
2466    </div>
2467
2468    <p>どのような設定もされていなければ、デフォルトでは <code>All</code> に
2469    なります。</p>
2470
2471</div>
2472<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2473<div class="directive-section"><h2><a name="Protocol" id="Protocol">Protocol</a> <a name="protocol" id="protocol">ディレクティブ</a></h2>
2474<table class="directive">
2475<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Protocol for a listening socket</td></tr>
2476<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Protocol <var>protocol</var></code></td></tr>
2477<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
2478<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2479<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2480<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Available in Apache 2.1.5 and later.
2481On Windows from Apache 2.3.3 and later.</td></tr>
2482</table><p>このディレクティブの解説文書は
2483            まだ翻訳されていません。英語版をご覧ください。
2484            </p><h3>参照</h3>
2485<ul>
2486<li><code class="directive">AcceptFilter</code></li>
2487<li><code class="directive"><a href="/mod/mpm_common.html#listen">Listen</a></code></li>
2488</ul>
2489</div>
2490<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2491<div class="directive-section"><h2><a name="Require" id="Require">Require</a> <a name="require" id="require">ディレクティブ</a></h2>
2492<table class="directive">
2493<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>どの認証済みユーザがリソースをアクセスできるかを選択する</td></tr>
2494<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Require <var>entity-name</var> [<var>entity-name</var>] ...</code></td></tr>
2495<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr>
2496<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>AuthConfig</td></tr>
2497<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2498<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2499</table>
2500    <p>このディレクティブは、認証されたユーザがリソースに対して
2501    アクセスできるかを制御します。
2502    制限条件は承認モジュールで処理されます。
2503    <code class="module"><a href="/mod/mod_authz_user.html">mod_authz_user</a></code> と <code class="module"><a href="/mod/mod_authz_groupfile.html">mod_authz_groupfile</a></code>
2504    で提供されている構文には、次のようなものもあります:</p>
2505
2506    <dl>
2507      <dt><code>Require user <var>userid</var> [<var>userid</var>] ...</code></dt>
2508
2509      <dd>指定されたユーザのみ、ディレクトリへのアクセスを許可します。</dd>
2510
2511      <dt><code>Require group <var>group-name</var> [<var>group-name</var>] ...</code></dt>
2512
2513      <dd>指定されたグループに属するユーザのみ、ディレクトリへのアクセスを許可します。</dd>
2514
2515      <dt><code>Require valid-user</code></dt>
2516
2517      <dd>全ての認証されたユーザに、ディレクトリへのアクセスを許可します。</dd>
2518    </dl>
2519
2520    <p>require オプションを実装している他の承認モジュールには、
2521    <code class="module"><a href="/mod/mod_authnz_ldap.html">mod_authnz_ldap</a></code>,
2522    <code class="module"><a href="/mod/mod_authz_dbm.html">mod_authz_dbm</a></code>,
2523    <code class="module"><a href="/mod/mod_authz_owner.html">mod_authz_owner</a></code> といったものがあります。</p>
2524
2525    <p><code class="directive">Require</code> は、正しく動作するためには <code class="directive"><a href="#authname">AuthName</a></code> 及び <code class="directive"><a href="#authtype">AuthType</a></code> ディレクティブや、
2526    (ユーザとグループを指定するために) <code class="directive"><a href="/mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code> 及び <code class="directive"><a href="/mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code>
2527    といったディレクティブと共に
2528    指定する必要があります。
2529    例えば:</p>
2530
2531    <div class="example"><p><code>
2532       AuthType Basic<br />
2533       AuthName "Restricted Resource"<br />
2534       AuthUserFile /web/users<br />
2535       AuthGroupFile /web/groups<br />
2536       Require group admin
2537    </code></p></div>
2538
2539    <p>このようにして適用されたアクセス制御は、<strong>全ての</strong>メソッドに
2540    対して行なわれます。
2541    <strong>通常は、これが望ましい動作です。</strong>
2542    もし、特定のメソッドに対してのみアクセスの制御を適用し、
2543    他のメソッドは制限しない場合には、<code class="directive"><a href="#limit">&lt;Limit&gt;</a></code> セクション内に
2544    <code class="directive">Require</code> を
2545    指定してください。</p>
2546
2547    <p><code class="directive">Require</code> を <code class="directive"><a href="/mod/mod_authz_host.html#allow">Allow</a></code> ディレクティブや <code class="directive"><a href="/mod/mod_authz_host.html#deny">Deny</a></code> ディレクティブと
2548    組み合わせて使った場合、これらの制約の相互作用は <code class="directive"><a href="#satisfy">Satisfy</a></code> ディレクティブで制御されます。
2549    </p>
2550
2551    <div class="note"><h3>サブディレクトリで制御を解除する方法</h3>
2552    <p><code class="directive"><a href="#satisfy">Satisfy</a></code> ディレクティブ
2553    で、保護されたディレクトリのサブディレクトリ内でアクセス制御を
2554    無効にする例は、下のようになります。
2555    <code class="module"><a href="/mod/mod_authz_host.html">mod_authz_host</a></code> によるアクセス制御も無効化されるので、
2556    このテクニックは注意してご活用ください。</p>
2557    <div class="example"><p><code>
2558      &lt;Directory /path/to/protected/&gt;<br />
2559        <span class="indent">
2560        Require user david<br />
2561        </span>
2562      &lt;/Directory&gt;<br />
2563      &lt;Directory /path/to/protected/unprotected&gt;<br />
2564        <span class="indent">
2565        # All access controls and authentication are disabled<br />
2566        # in this directory<br />
2567        Satisfy Any<br />
2568        Allow from all<br />
2569        </span>
2570      &lt;/Directory&gt;<br />
2571    </code></p></div>
2572    </div>
2573      
2574
2575<h3>参照</h3>
2576<ul>
2577<li><a href="/howto/auth.html">認証・承認・アクセス制御</a></li>
2578<li><code class="directive"><a href="#satisfy">Satisfy</a></code></li>
2579<li><code class="module"><a href="/mod/mod_authz_host.html">mod_authz_host</a></code></li>
2580</ul>
2581</div>
2582<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2583<div class="directive-section"><h2><a name="RLimitCPU" id="RLimitCPU">RLimitCPU</a> <a name="rlimitcpu" id="rlimitcpu">ディレクティブ</a></h2>
2584<table class="directive">
2585<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Apache の子プロセスから起動されたプロセスの CPU 消費量を
2586制限する</td></tr>
2587<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>RLimitCPU <var>seconds</var>|max [<var>seconds</var>|max]</code></td></tr>
2588<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>未設定。オペレーティングシステムのデフォルトを使用</code></td></tr>
2589<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
2590<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
2591<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2592<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2593</table>
2594    <p>一つか二つのパラメータをとります。
2595    最初のパラメータは全プロセスに対するリソースのソフトリミットを設定し、
2596    2 番目のパラメータは最大のリソースリミットを設定します。
2597    パラメータには数字か、オペレーティングシステムの最大となる
2598    <code>max</code> のどちらかを指定することができます。
2599    最大のリソースリミットを上げるためには、サーバを
2600    <code>root</code> で実行するか起動されなければいけません。</p>
2601
2602    <p>ちなみに、この設定は Apache の子プロセス自体ではなく、
2603    リクエストを受け付けた Apache の子プロセスから fork されたプロセスに
2604    適用されます。
2605    これには CGI や SSI から実行されたコマンドが含まれますが、Apache の
2606    親プロセスから fork されたログのパイププロセスなどには適用されません。</p>
2607
2608    <p>CPU リソースのリミットはプロセスあたりの秒数で表わされます。</p>
2609
2610
2611<h3>参照</h3>
2612<ul>
2613<li><code class="directive"><a href="#rlimitmem">RLimitMEM</a></code></li>
2614<li><code class="directive"><a href="#rlimitnproc">RLimitNPROC</a></code></li>
2615</ul>
2616</div>
2617<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2618<div class="directive-section"><h2><a name="RLimitMEM" id="RLimitMEM">RLimitMEM</a> <a name="rlimitmem" id="rlimitmem">ディレクティブ</a></h2>
2619<table class="directive">
2620<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Apache の子プロセスから起動されたプロセスのメモリ消費量を
2621制限する</td></tr>
2622<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>RLimitMEM <var>bytes</var>|max [<var>bytes</var>|max]</code></td></tr>
2623<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>未設定。オペレーティングシステムのデフォルトを使用</code></td></tr>
2624<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
2625<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
2626<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2627<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2628</table>
2629    <p>一つか二つのパラメータをとります。
2630    最初のパラメータは全プロセスに対するリソースのソフトリミットを設定し、
2631    2 番目のパラメータは最大のリソースリミットを設定します。
2632    パラメータには数字か、オペレーティングシステムの最大となる
2633    <code>max</code> のどちらかを指定することができます。
2634    最大のリソースリミットを上げるためには、サーバを
2635    <code>root</code> で実行するか起動されなければいけません。</p>
2636
2637    <p>この設定は Apache の子プロセス自体ではなく、
2638    リクエストを受け付けた Apache の子プロセスから fork されたプロセスに
2639    適用されます。
2640    これには CGI や SSI から実行されたコマンドが含まれますが、Apache の
2641    親プロセスから fork されたログのパイププロセスなどには適用されません。</p>
2642
2643    <p>メモリリソースのリミットはプロセスあたりのバイト数で表わされます。</p>
2644
2645<h3>参照</h3>
2646<ul>
2647<li><code class="directive"><a href="#rlimitcpu">RLimitCPU</a></code></li>
2648<li><code class="directive"><a href="#rlimitnproc">RLimitNPROC</a></code></li>
2649</ul>
2650</div>
2651<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2652<div class="directive-section"><h2><a name="RLimitNPROC" id="RLimitNPROC">RLimitNPROC</a> <a name="rlimitnproc" id="rlimitnproc">ディレクティブ</a></h2>
2653<table class="directive">
2654<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Apache の子プロセスから起動されたプロセスが起動するプロセスの
2655数を制限する</td></tr>
2656<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>RLimitNPROC <var>number</var>|max [<var>number</var>|max]</code></td></tr>
2657<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>未設定。オペレーティングシステムのデフォルトを使用</code></td></tr>
2658<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
2659<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
2660<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2661<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2662</table>
2663    <p>一つか二つのパラメータをとります。
2664    最初のパラメータは全プロセスに対するリソースのソフトリミットを設定し、
2665    2 番目のパラメータは最大のリソースリミットを設定します。
2666    パラメータには数字か、オペレーティングシステムの最大となる
2667    <code>max</code> のどちらかを指定することができます。
2668    最大のリソースリミットを上げるためには、サーバを
2669    <code>root</code> で実行するか起動されなければいけません。</p>
2670
2671    <p>この設定は Apache の子プロセス自体ではなく、
2672    リクエストを受け付けた Apache の子プロセスから fork されたプロセスに
2673    適用されます。
2674    これには CGI や SSI から実行されたコマンドが含まれますが、Apache の
2675    親プロセスから fork されたログのパイププロセスなどには適用されません。</p>
2676
2677    <p>プロセスの制限は、ユーザあたりのプロセス数で制御されます。</p>
2678
2679    <div class="note"><h3>注</h3>
2680      <p> CGI プロセスがウェブサーバのユーザ ID 以外で実行されるので
2681      <strong>無ければ</strong>、
2682      このディレクティブは、サーバ自身が生成できるプロセスの数を制限することになります。
2683      そのような状況になっているかどうかは、<code>error_log</code> 中の
2684      <strong><code>cannot fork</code></strong> というメッセージにより
2685      確認することができます。</p>
2686    </div>
2687
2688<h3>参照</h3>
2689<ul>
2690<li><code class="directive"><a href="#rlimitmem">RLimitMEM</a></code></li>
2691<li><code class="directive"><a href="#rlimitcpu">RLimitCPU</a></code></li>
2692</ul>
2693</div>
2694<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2695<div class="directive-section"><h2><a name="Satisfy" id="Satisfy">Satisfy</a> <a name="satisfy" id="satisfy">ディレクティブ</a></h2>
2696<table class="directive">
2697<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ホストレベルのアクセス制御とユーザ認証との相互作用を指定</td></tr>
2698<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Satisfy Any|All</code></td></tr>
2699<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>Satisfy All</code></td></tr>
2700<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr>
2701<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>AuthConfig</td></tr>
2702<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2703<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2704<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>バージョン 2.0.51 以降では <code class="directive"><a href="#limit">&lt;Limit&gt;</a></code> ディレクティブと <code class="directive"><a href="#limitexcept">&lt;LimitExcept&gt;</a></code> ディレクティブの影響を受ける
2705</td></tr>
2706</table>
2707    <p><code class="directive"><a href="/mod/mod_authz_host.html#allow">Allow</a></code> と
2708    <code class="directive"><a href="#require">Require</a></code> の両方が使われているときの
2709    アクセスポリシーを設定します。パラメータは <code>All</code> か <code>Any</code>
2710    です。このディレクティブはある場所へのアクセスがユーザ名/パスワード
2711    <em>と</em>クライアントのホストのアドレスで制限されているときにのみ
2712    役立ちます。デフォルトの動作 (<code>All</code>) はクライアントがアドレスによる
2713    アクセス制限を満たし、<em>かつ</em>正しいユーザ名とパスワードを入力することを
2714    要求します。<code>Any</code> では、クライアントはホストの制限を満たすか、
2715    正しいユーザ名とパスワードの入力をするかをすればアクセスを許可されます。
2716    これは、ある場所をパスワードで保護するけれど、特定のアドレスからの
2717    クライアントにはパスワードの入力を要求せずにアクセスを許可する、
2718    というようなときに使用できます。</p>
2719
2720    <p>例えば、同じネットワーク上にいる人にはウェブサイトのある部分について
2721    無制限のアクセスを許したいけれど、外のネットワークの人には
2722    パスワードを提供させるようにするためには、次のような設定をすることが
2723    できます:</p>
2724
2725    <div class="example"><p><code>
2726      Require valid-user<br />
2727      Order allow,deny<br />
2728      Allow from 192.168.1<br />
2729      Satisfy Any
2730    </code></p></div>
2731   
2732    <p>バージョン 2.0.51 からは
2733    <code class="directive"><a href="#limit">&lt;Limit&gt;</a></code> セクションと
2734    <code class="directive"><a href="#limitexcept">&lt;LimitExcept&gt;</a></code> セクションを使用することで
2735    <code class="directive">Satisfy</code> ディレクティブが
2736    適用されるメソッドを制限することが
2737    できるようになりました。</p>
2738
2739<h3>参照</h3>
2740<ul>
2741<li><code class="directive"><a href="/mod/mod_authz_host.html#allow">Allow</a></code></li>
2742<li><code class="directive"><a href="#require">Require</a></code></li>
2743</ul>
2744</div>
2745<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2746<div class="directive-section"><h2><a name="ScriptInterpreterSource" id="ScriptInterpreterSource">ScriptInterpreterSource</a> <a name="scriptinterpretersource" id="scriptinterpretersource">ディレクティブ</a></h2>
2747<table class="directive">
2748<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>CGI スクリプトのインタープリタの位置を調べるための手法</td></tr>
2749<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ScriptInterpreterSource Registry|Registry-Strict|Script</code></td></tr>
2750<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ScriptInterpreterSource Script</code></td></tr>
2751<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
2752<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
2753<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2754<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2755<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Win32 のみ。
2756オプション <code>Registry-Strict</code> は Apache 2.0 以降で使用可能</td></tr>
2757</table>
2758    <p>このディレクティブは、Apache で CGI スクリプトを
2759    実行する場合に利用するインタープリタを、
2760    どのように探し出すかについて制御するために使用します。
2761    デフォルトの設定は <code>Script</code> です。これはスクリプトの
2762    shebang 行 (最初の行で <code>#!</code> から始まるもの)
2763    に指されているインタープリタを使用します。Win32 ではその行は
2764    以下の様になります。</p>
2765
2766    <div class="example"><p><code>
2767      #!C:/Perl/bin/perl.exe
2768    </code></p></div>
2769
2770    <p>もしくは、<code>perl</code> が <code>PATH</code> にある場合は単に:</p>
2771
2772    <div class="example"><p><code>
2773      #!perl
2774    </code></p></div>
2775
2776    <p><code>ScriptInterpreterSource Registry</code> を指定すると、
2777    スクリプトファイルの拡張子 (例えば、<code>.pl</code>) を
2778    キーとして、Windows のレジストリツリー <code>HKEY_CLASSES_ROOT</code>
2779    を検索するようになります。レジストリのサブキー
2780    <code>Shell\ExecCGI\Command</code> か、それが存在しない場合は
2781    <code>Shell\Open\Command</code> がスクリプトファイルを開くために
2782    使われます。レジストリキーが見つからないときは、Apache は <code>Script</code>
2783    オプションが指定されたときの動作に戻ります。</p>
2784
2785    <p>たとえば、レジストリの設定で .pl 拡張子が perl に関連付けられている:</p>
2786
2787    <div class="example"><p><code><code>HKEY_CLASSES_ROOT\.pl\Shell\ExecCGI\Command\(Default) =&gt; C:\Perl\bin\perl.exe -wT</code></code></p></div>
2788
2789
2790    <div class="warning"><h3>セキュリティ</h3> 
2791    <p><code>ScriptInterpreterSource Registry</code> を <code class="directive"><a href="/mod/mod_alias.html#scriptalias">ScriptAlias</a></code> されたディレクトリで使うときは
2792    注意してください。Apache はそのディレクトリ中の<em>すべての</em>ファイルを
2793    実行しようとします。<code>Registry</code> という設定は通常は実行されない
2794    ファイルに対して望ましくないプログラムの実行が発生する可能性があります。
2795    例えば、ほとんどの Windows システムで、
2796    <code>.htm</code> ファイルのデフォルトの「開く」コマンドは
2797    Microsoft Internet Explorer を実行しますので、スクリプトに指定された
2798    ディレクトリにある <code>.htm</code> ファイルへのリクエストはサーバの
2799    バックグラウンドでブラウザを実行することになります。これは、一分内くらいで
2800    システムをクラッシュさるための良い方法です。</p>
2801    </div>
2802
2803    <p>Apache 2.0 から導入されたオプション <code>Registry-Strict</code> は
2804    <code>Registry</code> と同じことを行ないますが、サブキー
2805    <code>Shell\ExecCGI\Command</code> のみを使います。
2806    <code>ExecCGI</code> キーは普通に使われるキーではありません。Windows 
2807    レジストリに手動で設定する必要がありますので、システムでの偶発的なプログラムの
2808    実行を防ぐことができます。</p>
2809
2810</div>
2811<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2812<div class="directive-section"><h2><a name="ServerAdmin" id="ServerAdmin">ServerAdmin</a> <a name="serveradmin" id="serveradmin">ディレクティブ</a></h2>
2813<table class="directive">
2814<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバがクライアントに送るエラーメッセージに含める電子メールの
2815アドレス</td></tr>
2816<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerAdmin <var>email-address</var>|<var>URL</var></code></td></tr>
2817<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
2818<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2819<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2820</table>
2821    <p><code class="directive">ServerAdmin</code> は、クライアントに返すさまざまな
2822    エラーメッセージ中に記述する、
2823    問合せアドレスを設定します。与えられた引数を <code>httpd</code> が
2824    URL と認識しない場合は、<var>email-address</var> だと解釈して、
2825    ハイパーリンクのターゲットに <code>mailto:</code> を付けます。
2826    実際には、ここには電子メールアドレスを使うことが推奨されています。
2827    多くの CGI スクリプトはそうなっていることを仮定しています。
2828    URL を使う場合は、あなたの管理下にある別サーバを指すようにしてください。
2829    そうでないと、エラーが起こったときに連絡をすることができなくなって
2830    しまいます。
2831</p>
2832
2833    <p>その際、これのために専用のアドレスを設定するのが良いでしょう。
2834    例えば、</p>
2835
2836    <div class="example"><p><code>
2837      ServerAdmin www-admin@foo.example.com
2838    </code></p></div>
2839
2840    <p>といったようにします。ユーザはいつもサーバに関する話であるということを
2841    明記してくるわけではありませんので。</p>
2842
2843
2844</div>
2845<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2846<div class="directive-section"><h2><a name="ServerAlias" id="ServerAlias">ServerAlias</a> <a name="serveralias" id="serveralias">ディレクティブ</a></h2>
2847<table class="directive">
2848<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>リクエストを名前ベースのバーチャルホストにマッチさせているときに
2849使用されるホストの別名</td></tr>
2850<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerAlias <var>hostname</var> [<var>hostname</var>] ...</code></td></tr>
2851<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>バーチャルホスト</td></tr>
2852<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2853<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2854</table>
2855    <p><code class="directive">ServerAlias</code> ディレクティブは、<a href="/vhosts/name-based.html">ネームベースのバーチャルホスト</a>において
2856    使用するホストの別名を指定します。<code class="directive">ServerAlias</code>
2857    は適切であればワイルドカードも含めることができます。</p>
2858
2859    <div class="example"><p><code>
2860      &lt;VirtualHost *&gt;<br />
2861      ServerName server.domain.com<br />
2862      ServerAlias server server2.domain.com server2<br />
2863      # ...<br />
2864      &lt;/VirtualHost&gt;
2865    </code></p></div>
2866
2867<h3>参照</h3>
2868<ul>
2869<li><a href="/vhosts/">Apache バーチャルホスト説明書</a></li>
2870</ul>
2871</div>
2872<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2873<div class="directive-section"><h2><a name="ServerName" id="ServerName">ServerName</a> <a name="servername" id="servername">ディレクティブ</a></h2>
2874<table class="directive">
2875<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバが自分自身を示すときに使うホスト名とポート</td></tr>
2876<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerName [<var>scheme</var>://]<var>fully-qualified-domain-name</var>[:<var>port</var>]</code></td></tr>
2877<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
2878<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2879<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2880<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>このディレクティブはバージョン 2.0 ではバージョン 1.3 の
2881    <code class="directive">Port</code> ディレクティブの機能も含みます。</td></tr>
2882</table>
2883    <p><code class="directive">ServerName</code> ディレクティブは、
2884    サーバが自分自身を示すリクエストスキームとホスト名とポートを設定します。
2885    これは、リダイレクトする URL を生成する際に利用されます。
2886    例えば、ウェブサーバを動かしているマシンは <code>simple.example.com</code>
2887    で、DNS のエイリアス <code>www.example.com</code> もあるときに、
2888    ウェブサーバが後者として認識されて欲しいときは、以下のようにディレクティブを
2889    使います。</p>
2890
2891    <div class="example"><p><code>
2892      ServerName www.example.com:80
2893    </code></p></div>
2894
2895    <p><code class="directive">ServerName</code> が指定されていないときは、
2896    サーバは IP アドレスから逆引きを行なうことでホスト名を知ろうとします。
2897    <code class="directive">ServerName</code> にポートが指定されていないときは、
2898    サーバはリクエストが来ている
2899    ポートを使います。最高の信頼性と確実性をもたらすためには、
2900    <code class="directive">ServerName</code> を使ってホスト名とポートを明示的に
2901    指定してください。</p>
2902
2903    <p><a href="/vhosts/name-based.html">名前ベースのバーチャルホスト</a>
2904    を利用している場合、<code class="directive"><a href="#virtualhost">&lt;VirtualHost&gt;</a></code> セクション内の
2905    <code class="directive">ServerName</code> はこのバーチャルホストにマッチするために
2906    何がリクエストの Host: ヘッダに現れる必要があるのかを指定します。</p>
2907
2908    <p>リバースプロキシやロードバランサやSSL負荷軽減装置のような、
2909    SSLを処理するマシンの後ろでサーバを動かす場合は、
2910    サーバが正しい自己参照 URLを確実に生成するように、
2911    <code>https://</code> スキームとクライアントが接続するポート番号を、
2912    <code class="directive">ServerName</code> ディレクティブに指定してください。
2913    </p>
2914
2915    <p>自己参照 URL (例えば <code class="module"><a href="/mod/mod_dir.html">mod_dir</a></code> モジュールによるものなど)
2916    が指定されたポートを使うか、クライアントのリクエストのポート番号を使うかを
2917    決定する設定は <code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code> 
2918    ディレクティブと <code class="directive"><a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></code>
2919    ディレクティブを参照してください。</p>
2920
2921<h3>参照</h3>
2922<ul>
2923<li><a href="/dns-caveats.html">DNS と Apache に関する話</a></li>
2924<li><a href="/vhosts/">Apache バーチャルホスト説明書</a></li>
2925<li><code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code></li>
2926<li><code class="directive"><a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></code></li>
2927<li><code class="directive"><a href="#namevirtualhost">NameVirtualHost</a></code></li>
2928<li><code class="directive"><a href="#serveralias">ServerAlias</a></code></li>
2929</ul>
2930</div>
2931<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2932<div class="directive-section"><h2><a name="ServerPath" id="ServerPath">ServerPath</a> <a name="serverpath" id="serverpath">ディレクティブ</a></h2>
2933<table class="directive">
2934<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>非互換のブラウザが名前ベースのバーチャルホストにアクセスしたときの
2935ための互換用 URL パス名</td></tr>
2936<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerPath <var>URL-path</var></code></td></tr>
2937<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>バーチャルホスト</td></tr>
2938<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2939<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2940</table>
2941    <p><code class="directive">ServerPath</code> ディレクティブは、<a href="/vhosts/">ネームベースのバーチャルホスト</a>において利用する
2942    互換用 URL パス名を設定します。</p>
2943
2944<h3>参照</h3>
2945<ul>
2946<li><a href="/vhosts/">Apache バーチャルホスト説明書</a></li>
2947</ul>
2948</div>
2949<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2950<div class="directive-section"><h2><a name="ServerRoot" id="ServerRoot">ServerRoot</a> <a name="serverroot" id="serverroot">ディレクティブ</a></h2>
2951<table class="directive">
2952<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>インストールされたサーバのベースディレクトリ</td></tr>
2953<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerRoot <var>directory-path</var></code></td></tr>
2954<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ServerRoot /usr/local/apache</code></td></tr>
2955<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
2956<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2957<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2958</table>
2959    <p><code class="directive">ServerRoot</code> ディレクティブは、
2960    サーバが存在するディレクトリを設定します。
2961    通常、<code>conf/</code> や <code>logs/</code> といったサブディレクトリが
2962    存在します。
2963    また、他の設定ディレクティブ (例えば <code class="directive"><a href="#include">Include</a></code> や <code class="directive"><a href="/mod/mod_so.html#loadmodule">LoadModule</a></code> など) における相対パスは、
2964    このディレクトリからの相対位置となります。</p>
2965
2966    <div class="example"><h3>例</h3><p><code>
2967      ServerRoot /home/httpd
2968    </code></p></div>
2969
2970
2971
2972<h3>参照</h3>
2973<ul>
2974<li><a href="/invoking.html"><code>httpd</code> の <code>-d</code>
2975    オプション</a></li>
2976<li><code class="directive">ServerRoot</code> の権限を適切に設定する方法は<a href="/misc/security_tips.html#serverroot">セキュリティのこつ</a></li>
2977</ul>
2978</div>
2979<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
2980<div class="directive-section"><h2><a name="ServerSignature" id="ServerSignature">ServerSignature</a> <a name="serversignature" id="serversignature">ディレクティブ</a></h2>
2981<table class="directive">
2982<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバが生成するドキュメントのフッタを設定</td></tr>
2983<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerSignature On|Off|EMail</code></td></tr>
2984<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ServerSignature Off</code></td></tr>
2985<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
2986<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr>
2987<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
2988<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
2989</table>
2990    <p><code class="directive">ServerSignature</code> ディレクティブは、
2991    サーバが生成するドキュメント
2992    (エラーメッセージ、<code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code> における FTP のディレクトリリスト、
2993    <code class="module"><a href="/mod/mod_info.html">mod_info</a></code> の出力、等々)
2994    の最下行に付与するフッタの設定を行ないます。
2995    そのようなフッタ行を有効にしたい理由には、
2996    プロキシが複数連なっている場合に、ユーザはどのサーバが返した
2997    エラーメッセージかを知る手段がほとんど無いというものがあります。</p>
2998
2999
3000    <p>デフォルトである <code>Off</code> に設定をすると、フッタ行が抑制されます
3001    (そして、Apache-1.2 以前と互換の動作をします)。
3002    <code>On</code> に設定した場合は、単にドキュメントの中に、サーバのバージョン、
3003    稼動中のバーチャルホストの <a href="#servername">ServerName</a> の書かれた行を追加し、
3004    <code>EMail</code> にした場合はさらに参照されたドキュメントに対する <a href="#serveradmin">ServerAdmin</a> を指す "mailto:" が追加されます。</p>
3005
3006    <p>バージョン 2.0.44 以降ではこのディレクティブは <code class="directive"><a href="#serversignature">ServerSignature</a></code>
3007    ディレクティブにより表示される情報も制御します。</p>
3008
3009<h3>参照</h3>
3010<ul>
3011<li><code class="directive"><a href="#servertokens">ServerTokens</a></code></li>
3012</ul>
3013</div>
3014<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
3015<div class="directive-section"><h2><a name="ServerTokens" id="ServerTokens">ServerTokens</a> <a name="servertokens" id="servertokens">ディレクティブ</a></h2>
3016<table class="directive">
3017<tr><th><a href="directive-dict.html#Description">説明:</a></th><td><code>Server</code> HTTP 応答ヘッダを設定する</td></tr>
3018<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerTokens Major|Minor|Min[imal]|Prod[uctOnly]|OS|Full</code></td></tr>
3019<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ServerTokens Full</code></td></tr>
3020<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
3021<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
3022<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
3023</table>
3024    <p>このディレクティブは、クライアントに送り返す <code>Server</code>
3025    応答ヘッダ内に、サーバの一般的な OS 種別や、
3026    コンパイルされて組み込まれているモジュールの情報を
3027    含めるかどうかを指定します。</p>
3028
3029    <dl>
3030      <dt><code>ServerTokens Prod[uctOnly]</code></dt>
3031
3032      <dd>サーバは (例えば): <code>Server:
3033      Apache</code> といったように送ります。</dd>
3034
3035      <dt><code>ServerTokens Major</code></dt>
3036
3037      <dd>Server sends (<em>e.g.</em>): <code>Server:
3038      Apache/2</code></dd>
3039
3040      <dt><code>ServerTokens Minor</code></dt>
3041
3042      <dd>Server sends (<em>e.g.</em>): <code>Server:
3043      Apache/2.0</code></dd>
3044
3045      <dt><code>ServerTokens Min[imal]</code></dt>
3046
3047      <dd>サーバは (例えば): <code>Server:
3048      Apache/2.0.41</code> といったように送ります。</dd>
3049
3050      <dt><code>ServerTokens OS</code></dt>
3051
3052      <dd>サーバは (例えば): <code>Server: Apache/2.0.41
3053      (Unix)</code> といったように送ります。</dd>
3054
3055      <dt><code>ServerTokens Full</code> (もしくは未指定)</dt>
3056
3057      <dd>サーバは (例えば): <code>Server: Apache/2.0.41
3058      (Unix) PHP/4.2.2 MyMod/1.2</code> といったように送ります。</dd>
3059    </dl>
3060
3061    <p>この設定はサーバ全体に適用され、バーチャルホスト上で有効にしたり
3062    無効にしたりはできません。</p>
3063
3064    <p>バージョン 2.0.44 以降ではこのディレクティブは <code class="directive"><a href="#serversignature">ServerSignature</a></code>
3065    ディレクティブにより表示される情報も制御します。</p>
3066
3067<h3>参照</h3>
3068<ul>
3069<li><code class="directive"><a href="#serversignature">ServerSignature</a></code></li>
3070</ul>
3071</div>
3072<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
3073<div class="directive-section"><h2><a name="SetHandler" id="SetHandler">SetHandler</a> <a name="sethandler" id="sethandler">ディレクティブ</a></h2>
3074<table class="directive">
3075<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>マッチするファイルがハンドラで処理されるようにする</td></tr>
3076<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>SetHandler <var>handler-name</var>|None</code></td></tr>
3077<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
3078<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
3079<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
3080<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
3081<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0 で core に移動</td></tr>
3082</table>
3083    <p><code>.htaccess</code> や <code class="directive"><a href="#directory">&lt;Directory&gt;</a></code>
3084    セクション、<code class="directive"><a href="#location">&lt;Location&gt;</a></code>
3085    セクションに書かれた場合、
3086    このディレクティブはそこにあるすべてのファイルが
3087    <var>handler-name</var> で指定された<a href="/handler.html">ハンドラ</a>で扱われることを強制します。例えば、拡張子に関わらず、
3088    ディレクトリ全体がイメージマップファイルとして解析して欲しい場合には、
3089    以下をそのディレクトリの <code>.htaccess</code>
3090    ファイルに記述します:</p>
3091
3092    <div class="example"><p><code>
3093      SetHandler imap-file
3094    </code></p></div>
3095
3096    <p>別の例: URL <code>http://servername/status</code>
3097    が指定されたときにサーバが状態報告をするようにしたいときは、以下を
3098    <code>httpd.conf</code> に記述します:</p>
3099
3100    <div class="example"><p><code>
3101      &lt;Location /status&gt;<br />
3102      <span class="indent">
3103        SetHandler server-status<br />
3104      </span>
3105      &lt;/Location&gt;
3106    </code></p></div>
3107
3108    <p><code>None</code> という値を設定することで、
3109    前の方の <code class="directive">SetHandler</code> で定義された設定を無効にすることが
3110    できます。</p>
3111    <p><strong>注意:</strong>SetHandler はデフォルトのハンドラをオーバーライド
3112    しますので、通常の挙動、たとえば、スラッシュ (/) で終わる URL が
3113    リクエストされたときにディレクトリやインデックスファイルを返すよう取り扱う挙動は、
3114    行われなくなります。
3115    </p>
3116
3117
3118<h3>参照</h3>
3119<ul>
3120<li><code class="directive"><a href="/mod/mod_mime.html#addhandler">AddHandler</a></code></li>
3121</ul>
3122</div>
3123<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
3124<div class="directive-section"><h2><a name="SetInputFilter" id="SetInputFilter">SetInputFilter</a> <a name="setinputfilter" id="setinputfilter">ディレクティブ</a></h2>
3125<table class="directive">
3126<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントのリクエストや POST の入力を処理するフィルタを設定する</td></tr>
3127<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>SetInputFilter <var>filter</var>[;<var>filter</var>...]</code></td></tr>
3128<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
3129<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
3130<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
3131<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
3132</table>
3133    <p><code class="directive">SetInputFilter</code> ディレクティブはクライアントの
3134    リクエストや POST の入力をサーバが受け取ったときに処理するフィルタを
3135    設定します。これは <code class="directive"><a href="/mod/mod_mime.html#addinputfilter">AddInputFilter</a></code>
3136    ディレクティブを含め、他の場所で定義されているフィルタの設定に
3137    追加されます。</p>
3138
3139    <p>複数のフィルタを指定するときは、データを処理する順番に
3140    セミコロンで区切る必要があります。</p>
3141
3142
3143<h3>参照</h3>
3144<ul>
3145<li><a href="/filter.html">フィルタ</a>説明書</li>
3146</ul>
3147</div>
3148<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
3149<div class="directive-section"><h2><a name="SetOutputFilter" id="SetOutputFilter">SetOutputFilter</a> <a name="setoutputfilter" id="setoutputfilter">ディレクティブ</a></h2>
3150<table class="directive">
3151<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバの応答を処理するフィルタを設定する</td></tr>
3152<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>SetOutputFilter <var>filter</var>[;<var>filter</var>...]</code></td></tr>
3153<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
3154<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr>
3155<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
3156<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
3157</table>
3158    <p><code class="directive">SetOutputFilter</code> ディレクティブは
3159    サーバの応答をクライアントに送り返される前に処理するフィルタを設定します。
3160    これは <code class="directive"><a href="/mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code>
3161    ディレクティブを含め、他の場所で定義されているフィルタの設定に
3162    追加されます。</p>    
3163
3164    <p>例えば、以下の設定は <code>/www/data/</code> ディレクトリのすべての
3165    ファイルを SSI で処理します。</p>
3166
3167    <div class="example"><p><code>
3168      &lt;Directory /www/data/&gt;<br />
3169      <span class="indent">
3170        SetOutputFilter INCLUDES<br />
3171      </span>
3172      &lt;/Directory&gt;
3173    </code></p></div>
3174
3175    <p>複数のフィルタを指定するときは、データを処理する順番に
3176    セミコロンで区切る必要があります。</p>
3177
3178<h3>参照</h3>
3179<ul>
3180<li><a href="/filter.html">フィルタ</a>説明書</li>
3181</ul>
3182</div>
3183<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
3184<div class="directive-section"><h2><a name="Suexec" id="Suexec">Suexec</a> <a name="suexec" id="suexec">ディレクティブ</a></h2>
3185<table class="directive">
3186<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Enable or disable the suEXEC feature</td></tr>
3187<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Suexec On|Off</code></td></tr>
3188<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>On if suexec binary exists with proper owner and mode,
3189Off otherwise</code></td></tr>
3190<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
3191<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
3192<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
3193<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Available in Apache httpd 2.2.18 and later</td></tr>
3194</table><p>このディレクティブの解説文書は
3195            まだ翻訳されていません。英語版をご覧ください。
3196            </p></div>
3197<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
3198<div class="directive-section"><h2><a name="TimeOut" id="TimeOut">TimeOut</a> <a name="timeout" id="timeout">ディレクティブ</a></h2>
3199<table class="directive">
3200<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>各イベントについて、リクエストを失敗させるまでにサーバが
3201待つ時間を設定</td></tr>
3202<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>TimeOut <var>seconds</var></code></td></tr>
3203<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>TimeOut 300</code></td></tr>
3204<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr>
3205<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
3206<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
3207</table>
3208    <p><code class="directive">TimeOut</code> ディレクティブは、現在のところ
3209    以下の三つの待ち時間についての定義を行います:</p>
3210
3211    <ol>
3212      <li>GET リクエストを受け取るのにかかる総時間</li>
3213
3214      <li>POST や PUTリクエストにおいて、次の TCP パケットが届くまでの待ち時間</li>
3215
3216      <li>レスポンスを返す際、TCP の ACK が帰ってくるまでの時間</li>
3217    </ol>
3218    
3219    <p>将来には別々の設定をすることが可能にできるよう考慮中です。
3220    Apache 1.2 以前はタイマーは 1200 がデフォルトでしたが、
3221    300 に下げられました。300 でもほとんどの場合は十分すぎる値です。
3222    コード中の変な場所にまだパケットを送る際にタイマをリセットしない
3223    場所があるかもしれないので、デフォルトをより小さい値にはしていません。</p>
3224
3225
3226</div>
3227<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
3228<div class="directive-section"><h2><a name="TraceEnable" id="TraceEnable">TraceEnable</a> <a name="traceenable" id="traceenable">ディレクティブ</a></h2>
3229<table class="directive">
3230<tr><th><a href="directive-dict.html#Description">説明:</a></th><td><code>TRACE</code> メソッドのリクエストに対する応答方法を決める
3231</td></tr>
3232<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>TraceEnable <var>[on|off|extended]</var></code></td></tr>
3233<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>TraceEnable on</code></td></tr>
3234<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
3235<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
3236<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
3237<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 1.3.34, 2.0.55 以降</td></tr>
3238</table>
3239    <p>コアサーバと <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code> 両方の <code>TRACE</code>
3240    の挙動をオーバーライドします。デフォルトの <code>TraceEnable on</code>
3241    は、リクエストボディを受け入れないような、RFC2616 に準拠した
3242    <code>TRACE</code> リクエストを受け付けます。
3243    <code>TraceEnable off</code> と設定すると、コアサーバと
3244    <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code> は <code>405</code> (メソッド不許可)
3245    エラーをクライアントに返します。</p>
3246
3247    <p>最後に、テストや調査目的などの限定用途として、仕様に準拠しない
3248    <code>TraceEnable extended</code> を使って、リクエストボディを
3249    受け付けるように挙動を変更できます。(オリジンサーバとしての)
3250    コアサーバでは、リクエストボディのサイズは 64k (
3251    <code>Transfer-Encoding: chunked</code> が使われている場合は 
3252    chunk ヘッダ用に +8k) に制限されます。
3253    コアサーバは、フルヘッダと全ての chunk ヘッダをレスポンスの
3254    ボディとして返却します。
3255    proxy サーバとしては、リクエストボディのサイズは 64k に制限されません。</p>
3256
3257</div>
3258<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
3259<div class="directive-section"><h2><a name="UseCanonicalName" id="UseCanonicalName">UseCanonicalName</a> <a name="usecanonicalname" id="usecanonicalname">ディレクティブ</a></h2>
3260<table class="directive">
3261<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバが自分自身の名前とポートを決定する方法を設定する</td></tr>
3262<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>UseCanonicalName On|Off|Dns</code></td></tr>
3263<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>UseCanonicalName Off</code></td></tr>
3264<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ</td></tr>
3265<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
3266<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
3267</table>
3268    <p>多くの状況で Apache は<em>自己参照</em> URL、すなわち
3269    同じサーバを指す URL、を作成する必要があります。
3270    <code>UseCanonicalName On</code> の場合は、<code class="directive"><a href="#servername">ServerName</a></code> ディレクティブで指定されている
3271    ホスト名とポート番号を使って、その正規名 (自己参照の名前) を生成します。
3272    この名前は、すべての自己参照 URL で使われますし、CGI の 
3273    <code>SERVER_NAME</code> と <code>SERVER_PORT</code> でも使われます。</p>
3274
3275    <p><code>UseCanonicalName Off</code> の場合、
3276    クライアントがホスト名とポートを指定したときには、
3277    それらを元に自己参照 URL を作成します (指定がなかったときは
3278    上の定義と同様にして正規名を解決します)。
3279    これらの値は<a href="/vhosts/name-based.html">名前ベースの
3280    バーチャルホスト</a>を実装で使われているのと同じ値で、
3281    同じクライアントで取得できる値になっています。
3282    CGI 変数 <code>SERVER_NAME</code> と <code>SERVER_PORT</code> 
3283    もクライアントから与えられた値から作成されます。</p>
3284
3285    <p>このような挙動が便利な例は、イントラネットのサーバで <code>www</code>
3286    のような短い名前でユーザがマシンに接続するときです。
3287    ユーザの入力で短いホスト名が使われていて、URL が<em>最後のスラッシュ無しの</em>
3288    ディレクトリになっている <code>http://www/splat</code> のようなとき、
3289    Apache はリクエストを <code>http://www.domain.com/splat/</code> 
3290    へリダイレクトします。
3291    認証をするように設定していると、この場合
3292    ユーザは 2 回認証をしなければならなくなります (<code>www</code> に
3293    対して 1 回、<code>www.domain.com</code> に対してもう 1 回 -- 
3294    詳細は <a href="http://httpd.apache.org/docs/misc/FAQ.html#prompted-twice">この話題の
3295    FAQ</a> を参照してください)。
3296    しかし <code class="directive">UseCanonicalName</code> が <code>Off</code> になっていると、
3297    Apache は <code>http://www/splat/</code> にリダイレクトします。</p>
3298
3299    <p>三つ目のオプション <code>UseCanonicalName DNS</code> は、
3300    大規模な IP ベースのバーチャルホスティングで、
3301    <code>Host:</code> ヘッダを提供しない古いクライアントを
3302    サポートする場合を想定しています。
3303    このオプションでは Apache は、クライアントが接続した IP アドレスに対して
3304    DNS の逆引きを行なって、自己参照 URL を作成します。</p>
3305
3306    <div class="warning"><h3>警告</h3>
3307    <p>CGI が <code>SERVER_NAME</code> に関して何らかの前提条件を
3308    仮定しているときには、このオプションの設定によっては動作しなく
3309    なるかもしれません。クライアントは実質的にはホスト名として
3310    何でも望みの値を指定することができます。CGI が
3311    <code>SERVER_NAME</code> を使って自己参照 URL を作成することしかしない
3312    場合は、どの設定を行なっても大丈夫なはずです。</p></div>
3313
3314<h3>参照</h3>
3315<ul>
3316<li><code class="directive"><a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></code></li>
3317<li><code class="directive"><a href="#servername">ServerName</a></code></li>
3318<li><code class="directive"><a href="/mod/mpm_common.html#listen">Listen</a></code></li>
3319</ul>
3320</div>
3321<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
3322<div class="directive-section"><h2><a name="UseCanonicalPhysicalPort" id="UseCanonicalPhysicalPort">UseCanonicalPhysicalPort</a> <a name="usecanonicalphysicalport" id="usecanonicalphysicalport">ディレクティブ</a></h2>
3323<table class="directive">
3324<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバの名前とポートの解決方法を設定する</td></tr>
3325<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>UseCanonicalPhysicalPort On|Off</code></td></tr>
3326<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>UseCanonicalPhysicalPort Off</code></td></tr>
3327<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ</td></tr>
3328<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
3329<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
3330</table>
3331    <p>Apache は様々な状況で <em>自己参照</em> URL つまりサーバが自分自身を指し示す
3332    URL を生成する必要があります。
3333    <code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code> ディレクティブの
3334    設定によってサーバの別名を構成するようになりますが、
3335    その際の別名に使うポートは
3336    <code>UseCanonicalPhysicalPort On</code> という設定があれば、
3337    実際のポート番号をポート番号として使う候補に入れてリクエストを
3338    処理するようになります。<code>UseCanonicalPhysicalPort Off</code>
3339    という設定であれば、実際のポート番号は使用せず、設定されている情報を
3340    全て信じてポート番号を構成するようになります。</p>
3341
3342    <div class="note"><h3>注</h3>
3343    <p>実際のポート番号が使われる順序は次のようになっています :<br /><br />
3344     <code>UseCanonicalName On</code></p>
3345     <ul>
3346      <li><code>ServerName</code> で指定されているポート番号</li>
3347      <li>実際のポート番号</li>
3348      <li>デフォルトのポート番号</li>
3349     </ul>
3350     <code>UseCanonicalName Off | DNS</code>
3351     <ul>
3352      <li><code>Host:</code> ヘッダから抽出されたポート番号</li>
3353      <li>実際のポート番号</li>
3354      <li><code>ServerName</code> で指定されているポート番号</li>
3355      <li>デフォルトのポート番号</li>
3356     </ul>
3357    
3358    <p><code>UseCanonicalPhysicalPort Off</code> で、
3359    実際のポート番号が上の順序から取り除かれます。</p>
3360    </div>
3361
3362
3363<h3>参照</h3>
3364<ul>
3365<li><code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code></li>
3366<li><code class="directive"><a href="#servername">ServerName</a></code></li>
3367<li><code class="directive"><a href="/mod/mpm_common.html#listen">Listen</a></code></li>
3368</ul>
3369</div>
3370<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
3371<div class="directive-section"><h2><a name="VirtualHost" id="VirtualHost">&lt;VirtualHost&gt;</a> <a name="virtualhost" id="virtualhost">ディレクティブ</a></h2>
3372<table class="directive">
3373<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>特定のホスト名や IP アドレスのみに適用されるディレクティブを
3374囲む</td></tr>
3375<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>&lt;VirtualHost
3376    <var>addr</var>[:<var>port</var>] [<var>addr</var>[:<var>port</var>]]
3377    ...&gt; ... &lt;/VirtualHost&gt;</code></td></tr>
3378<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
3379<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr>
3380<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr>
3381</table>
3382    <p><code class="directive">&lt;VirtualHost&gt;</code> 及び
3383    <code>&lt;/VirtualHost&gt;</code> は、
3384    特定のバーチャルホストに対してのみ適用されるディレクティブ群を括る
3385    ために使われます。
3386    バーチャルホストコンテキストで許可される全てのディレクティブを指定可能です。
3387    サーバが、指定されたバーチャルホストにあるドキュメントへの
3388    リクエストを受け付けた場合、
3389    <code class="directive">&lt;VirtualHost&gt;</code> セクションの中にある
3390    ディレクティブが適用されます。
3391    <var>Addr</var>は、次のものが利用できます:</p>
3392
3393    <ul>
3394      <li>バーチャルホストの IP アドレス</li>
3395
3396      <li>バーチャルホストの IP に対応する完全なドメイン名(非推奨)</li>
3397
3398      <li><code>NameVirtualHost *</code> と共に使われる、
3399      すべての IP アドレスにマッチする文字 <code>*</code></li>
3400
3401      <li>IP ベースのバーチャルホストで他のものにマッチしない IP アドレス
3402      のための文字列 <code>_default_</code></li>
3403    </ul>
3404
3405    <div class="example"><h3>例</h3><p><code>
3406      &lt;VirtualHost 10.1.2.3&gt;<br />
3407      <span class="indent">
3408        ServerAdmin webmaster@host.foo.com<br />
3409        DocumentRoot /www/docs/host.foo.com<br />
3410        ServerName host.foo.com<br />
3411        ErrorLog logs/host.foo.com-error_log<br />
3412        TransferLog logs/host.foo.com-access_log<br />
3413      </span>
3414      &lt;/VirtualHost&gt;
3415    </code></p></div>    
3416 
3417    <p>IPv6 アドレスはオプションのポート番号の指定と区別するために、
3418    角括弧で括って指定する必要があります。次は IPv6 の例です:</p>
3419
3420    <div class="example"><p><code>
3421      &lt;VirtualHost [2001:db8::a00:20ff:fea7:ccea]&gt;<br />
3422      <span class="indent">
3423        ServerAdmin webmaster@host.example.com<br />
3424        DocumentRoot /www/docs/host.example.com<br />
3425        ServerName host.example.com<br />
3426        ErrorLog logs/host.example.com-error_log<br />
3427        TransferLog logs/host.example.com-access_log<br />
3428      </span>
3429      &lt;/VirtualHost&gt;
3430    </code></p></div>  
3431
3432    <p>各々のバーチャルホストにはそれぞれ違う IP アドレス、ポート番号
3433    もしくはホスト名に対応する必要があり、
3434    1 番目の場合には複数のアドレスで IP パケットを受信できるように
3435    サーバマシンを設定しなければなりません。
3436    (もし、マシンが複数のネットワークインターフェースを持たない場合は、
3437    (OSがサポートしていれば) <code>ifconfig alias</code> コマンドにより
3438    達成できます)。</p>
3439
3440    <div class="note"><h3>注意点</h3>
3441    <p><code class="directive">&lt;VirtualHost&gt;</code> は Apache が Listen する
3442    IP アドレスには影響を与え<strong>ません</strong>。
3443    <code class="directive"><a href="/mod/mpm_common.html#listen">Listen</a></code> を
3444    使って Apache が正しいアドレスを listen するように設定する必要があります。</p>
3445    </div>
3446
3447    <p>IP ベースのバーチャルホストを使っている場合は、特別な名前
3448    <code>_default_</code> を指定することができます。その場合は
3449    そのバーチャルホストは他のバーチャルホストで明示的に挙げられていない
3450    すべての IP アドレスにマッチします。<code>_default_</code> バーチャルホストが無い
3451    場合に IP がバーチャルホストで指定されたものにマッチしないときは、
3452    VirtualHost セクションの外のすべての定義からなる「主」サーバ設定が
3453    使われます。(ただし、<code class="directive"><a href="#namevirtualhost">NameVirtualHost</a></code> ディレクティブにマッチする
3454    すべての IP アドレスは「主」サーバ設定も <code>_default_</code> バーチャルホストも
3455    使わないことに注意してください。詳しくは <a href="/vhosts/name-based.html">ネームベースのバーチャルホスト</a> を
3456    参照してください。)</p>
3457
3458    <p><code>:port</code> といった形式で記述することにより、
3459    マッチさせるポートを変更可能です。
3460    この指定をしない場合には、主サーバ設定における
3461    一番最後に <code><a href="#port">Port</a></code> で指定されたポートが
3462    デフォルトとなります。
3463    <code>:*</code> を指定することにより、
3464    アドレス上の全てのポートにマッチします。(<code>_default_</code> のときは
3465    これを使うことが推奨されています。)</p>
3466
3467    <p>それぞれの <code class="directive">&lt;VirtualHost&gt;</code>
3468    ブロック内で <code class="directive"><a href="#servername">ServerName</a></code>
3469    を指定します。もしこれが無いと、"main" サーバ設定の
3470    <code class="directive"><a href="#servername">ServerName</a></code> が引き継がれます。</p>
3471
3472    <div class="warning"><h3>セキュリティ</h3>
3473    <p>サーバーを起動した以外のユーザがログファイルが保管されるディレクトリに
3474    書き込み可能なときになぜセキュリティが破られる可能性があるかの詳細は
3475    <a href="/misc/security_tips.html">セキュリティに関するコツ</a> を
3476    参照してください。</p></div>
3477
3478<h3>参照</h3>
3479<ul>
3480<li><a href="/vhosts/">Apache バーチャルホスト説明書</a></li>
3481<li><a href="/dns-caveats.html">DNS と Apache に関する話</a></li>
3482<li><a href="/bind.html">Apache が使用するアドレスとポートの設定</a></li>
3483<li>リクエストを受けた際にこれらの異なるセクションが
3484    組み合わされる方法については <a href="/sections.html">
3485    &lt;Directory&gt;, &lt;Location&gt;, &lt;Files&gt; セクションの動作法</a></li>
3486</ul>
3487</div>
3488</div>
3489<div class="bottomlang">
3490<p><span>翻訳済み言語: </span><a href="/de/mod/core.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
3491<a href="/en/mod/core.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
3492<a href="/fr/mod/core.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
3493<a href="/ja/mod/core.html" title="Japanese">&nbsp;ja&nbsp;</a> |
3494<a href="/tr/mod/core.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
3495</div><div class="top"><a href="#page-header"><img src="/images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">コメント</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
3496<script type="text/javascript"><!--//--><![CDATA[//><!--
3497var comments_shortname = 'httpd';
3498var comments_identifier = 'http://httpd.apache.org/docs/2.2/mod/core.html';
3499(function(w, d) {
3500    if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
3501        d.write('<div id="comments_thread"><\/div>');
3502        var s = d.createElement('script');
3503        s.type = 'text/javascript';
3504        s.async = true;
3505        s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
3506        (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
3507    }
3508    else { 
3509        d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
3510    }
3511})(window, document);
3512//--><!]]></script></div><div id="footer">
3513<p class="apache">Copyright 2013 The Apache Software Foundation.<br />この文書は <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a> のライセンスで提供されています。.</p>
3514<p class="menu"><a href="/mod/">モジュール</a> | <a href="/mod/directives.html">ディレクティブ</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="/glossary.html">用語</a> | <a href="/sitemap.html">サイトマップ</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
3515if (typeof(prettyPrint) !== 'undefined') {
3516    prettyPrint();
3517}
3518//--><!]]></script>
3519</body></html>