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