diff options
author | Takashi Sato <takashi@apache.org> | 2008-06-21 19:44:43 +0200 |
---|---|---|
committer | Takashi Sato <takashi@apache.org> | 2008-06-21 19:44:43 +0200 |
commit | de5118cb303eac3587a7b1628770970db265d46c (patch) | |
tree | 6f58822b0ed9bca7b01f4d52ce5dae34bfdec309 /docs/manual/mod/core.html.ja.utf8 | |
parent | new Turkish translations. (diff) | |
download | apache2-de5118cb303eac3587a7b1628770970db265d46c.tar.xz apache2-de5118cb303eac3587a7b1628770970db265d46c.zip |
update transformations
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@670238 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'docs/manual/mod/core.html.ja.utf8')
-rw-r--r-- | docs/manual/mod/core.html.ja.utf8 | 609 |
1 files changed, 315 insertions, 294 deletions
diff --git a/docs/manual/mod/core.html.ja.utf8 b/docs/manual/mod/core.html.ja.utf8 index 61e7f4414b..75868ff6d1 100644 --- a/docs/manual/mod/core.html.ja.utf8 +++ b/docs/manual/mod/core.html.ja.utf8 @@ -27,8 +27,6 @@ <a href="../ja/mod/core.html" title="Japanese"> ja </a> | <a href="../tr/mod/core.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p> </div> -<div class="outofdate">この日本語訳はすでに古くなっている可能性があります。 - 更新された内容を見るには英語版をご覧下さい。</div> <table class="module"><tr><th><a href="module-dict.html#Description">説明:</a></th><td>常に使用可能な Apache HTTP サーバのコア機能</td></tr> <tr><th><a href="module-dict.html#Status">ステータス:</a></th><td>Core</td></tr></table> </div> @@ -41,11 +39,10 @@ <li><img alt="" src="../images/down.gif" /> <a href="#addoutputfilterbytype">AddOutputFilterByType</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#allowencodedslashes">AllowEncodedSlashes</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#allowoverride">AllowOverride</a></li> -<li><img alt="" src="../images/down.gif" /> <a href="#authname">AuthName</a></li> -<li><img alt="" src="../images/down.gif" /> <a href="#authtype">AuthType</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#cgimapextension">CGIMapExtension</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#contentdigest">ContentDigest</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#defaulttype">DefaultType</a></li> +<li><img alt="" src="../images/down.gif" /> <a href="#define">Define</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#directory"><Directory></a></li> <li><img alt="" src="../images/down.gif" /> <a href="#directorymatch"><DirectoryMatch></a></li> <li><img alt="" src="../images/down.gif" /> <a href="#documentroot">DocumentRoot</a></li> @@ -58,6 +55,7 @@ <li><img alt="" src="../images/down.gif" /> <a href="#filesmatch"><FilesMatch></a></li> <li><img alt="" src="../images/down.gif" /> <a href="#forcetype">ForceType</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#hostnamelookups">HostnameLookups</a></li> +<li><img alt="" src="../images/down.gif" /> <a href="#if"><If></a></li> <li><img alt="" src="../images/down.gif" /> <a href="#ifdefine"><IfDefine></a></li> <li><img alt="" src="../images/down.gif" /> <a href="#ifmodule"><IfModule></a></li> <li><img alt="" src="../images/down.gif" /> <a href="#include">Include</a></li> @@ -77,11 +75,9 @@ <li><img alt="" src="../images/down.gif" /> <a href="#maxkeepaliverequests">MaxKeepAliveRequests</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#namevirtualhost">NameVirtualHost</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#options">Options</a></li> -<li><img alt="" src="../images/down.gif" /> <a href="#require">Require</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#rlimitcpu">RLimitCPU</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#rlimitmem">RLimitMEM</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#rlimitnproc">RLimitNPROC</a></li> -<li><img alt="" src="../images/down.gif" /> <a href="#satisfy">Satisfy</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#scriptinterpretersource">ScriptInterpreterSource</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#serveradmin">ServerAdmin</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#serveralias">ServerAlias</a></li> @@ -94,7 +90,9 @@ <li><img alt="" src="../images/down.gif" /> <a href="#setinputfilter">SetInputFilter</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#setoutputfilter">SetOutputFilter</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#timeout">TimeOut</a></li> +<li><img alt="" src="../images/down.gif" /> <a href="#traceenable">TraceEnable</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#usecanonicalname">UseCanonicalName</a></li> +<li><img alt="" src="../images/down.gif" /> <a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#virtualhost"><VirtualHost></a></li> </ul> </div> @@ -144,7 +142,7 @@ <p>引数に <code>none</code> を指定すると、プロトコルに対する全ての Accept Filter が無効になります。<code>nntp</code> といった、先にサーバにデータを 送る必要のあるプロトコルに有効です :</p> - <div class="example"><p><code>AcceptFilter nttp none</code></p></div> + <div class="example"><p><code>AcceptFilter nntp none</code></p></div> </div> @@ -308,9 +306,11 @@ <tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr> <tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> <tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> -<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0.33 以降で使用可能</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0.33 以降で使用可能; Apache 2.1 以降非推奨</td></tr> </table> - <p>このディレクティブは応答の MIME-type に応じて出力<a href="../filter.html">フィルタ</a>を使用するようにします。</p> + <p>このディレクティブは応答の <a class="glossarylink" href="../glossary.html#mime-type" title="用語集を参照">MIME タイプ</a> に応じて出力<a href="../filter.html">フィルタ</a>を使用するようにします。 + しかし後述する問題のため、このディレクティブは非推奨です。 + 同等の機能は <code class="module"><a href="../mod/mod_filter.html">mod_filter</a></code> で実現可能です。</p> <p>次の例は <code class="module"><a href="../mod/mod_deflate.html">mod_deflate</a></code> の <code>DEFLATE</code> フィルタを 使っています。<code>text/html</code> と <code>text/plain</code> の @@ -340,7 +340,7 @@ <div class="warning"><h3>注:</h3> <p><code class="directive">AddOutputFilterByType</code> ディレクティブにより 有効にしたフィルタは場合によっては、部分的もしくは完全に適用されないことが - あります。例えば、MIME タイプがが決定できないときには + あります。例えば、<a class="glossarylink" href="../glossary.html#mime-type" title="用語集を参照">MIME タイプ</a> が決定できないときには <code class="directive"><a href="#defaulttype">DefaultType</a></code> の設定が同じだったとしても、 <code class="directive"><a href="#defaulttype">DefaultType</a></code> 設定を使うようになります。</p> <p>しかし、確実にフィルタが適用されるようにしたいときは、リソースに @@ -349,8 +349,6 @@ <code class="directive"><a href="#forcetype">ForceType</a></code> ディレクティブを使います。 (nphでない) CGI スクリプトでコンテントタイプを設定するというものでも 大丈夫です。</p> - - <p>タイプ毎の出力フィルタはプロキシリクエストには決して適用されません。</p> </div> <h3>参照</h3> @@ -381,8 +379,6 @@ <p><code class="directive">AllowEncodedSlashes</code> <code>On</code> による パス分離文字の使用は、<code>PATH_INFO</code> と合わせて 使うときに一番役に立ちます。</p> - <p>Turning <code class="directive">AllowEncodedSlashes</code> <code>On</code> is - mostly useful when used in conjunction with <code>PATH_INFO</code>.</p> <div class="note"><h3>注</h3> <p>符号化されたスラッシュを許可することは、<em>復号</em>をすることを @@ -408,7 +404,7 @@ <tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> </table> <p>サーバが (<code class="directive"><a href="#accessfilename">AccessFileName</a></code> によって指定された) - .htaccess ファイルを見つけた時、そのファイルの中で + <code>.htaccess</code> ファイルを見つけた時、そのファイルの中で 宣言されたどのディレクティブがより前に定義された設定ディレクティブを 上書きできるかを知る必要があります。</p> @@ -418,7 +414,7 @@ や <code class="directive"><a href="#files"><Files></a></code> セクションでは無効です。 </div> - <p>このディレクティブを None に設定すると、<a href="#accessfilename">.htaccess</a> ファイルは完全に + <p>このディレクティブを <code>None</code> に設定すると、<a href="#accessfilename">.htaccess</a> ファイルは完全に 無視されます。 この場合、サーバはファイルシステムの <code>.htaccess</code> ファイルを読むことを 試みさえしません。</p> @@ -438,8 +434,8 @@ 認証に関するディレクティブの使用を許可する (<code class="directive"><a href="../mod/mod_authn_dbm.html#authdbmgroupfile">AuthDBMGroupFile</a></code>, <code class="directive"><a href="../mod/mod_authn_dbm.html#authdbmuserfile">AuthDBMUserFile</a></code>, <code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code>, - <code class="directive"><a href="#authname">AuthName</a></code>, - <code class="directive"><a href="#authtype">AuthType</a></code>, <code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code>, <code class="directive"><a href="#require">Require</a></code> <em>など</em>)。</dd> + <code class="directive"><a href="../mod/mod_authn_core.html#authname">AuthName</a></code>, + <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> <dt>FileInfo</dt> @@ -447,7 +443,13 @@ ドキュメントタイプを制御するためのディレクティブの使用を許可する (<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>, <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>, <code class="module"><a href="../mod/mod_mime.html">mod_mime</a></code> の Add* と Remove* - ディレクティブ<em>など</em>)。</dd> + ディレクティブ<em>など</em>), + ドキュメントのメタデータ (<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>), + <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>) と + <code class="module"><a href="../mod/mod_actions.html">mod_actions</a></code> の + <code class="directive"><a href="../mod/mod_actions.html#action">Action</a></code> + ディレクティブ。 + </dd> <dt>Indexes</dt> @@ -492,73 +494,10 @@ </ul> </div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> -<div class="directive-section"><h2><a name="AuthName" id="AuthName">AuthName</a> <a name="authname" id="authname">ディレクティブ</a></h2> -<table class="directive"> -<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>HTTP 認証の認可領域 (訳注: realm)</td></tr> -<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AuthName <var>auth-domain</var></code></td></tr> -<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr> -<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>AuthConfig</td></tr> -<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> -<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> -</table> - <p>このディレクティブはディレクトリに対する認可領域 (訳注: realm) - の名前を指定します。 - 認可領域は、利用者がどのユーザ名とパスワードを送信すればよいのかを - クライアントに教えるために利用します。 - <code class="directive">AuthName</code> は一つの引数をとり、 - スペースが含まれる場合には、 - 引用符で括らなければなりません。 - このディレクティブは - <code class="directive"><a href="#authtype">AuthType</a></code> ディレクティブや - <code class="directive"><a href="#require">Require</a></code> ディレクティブと、 - <code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code> や - <code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code> などのディレクティブと - 一緒に利用する必要があります。</p> - - <p>例えば:</p> - - <div class="example"><p><code> - AuthName "Top Secret" - </code></p></div> - - <p>ここで <code>AuthName</code> に指定した文字列が、 - 大部分のブラウザのパスワードダイアログに表示されます。</p> - -<h3>参照</h3> -<ul> -<li><a href="../howto/auth.html">認証、承認、アクセス制御</a></li> -</ul> -</div> -<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> -<div class="directive-section"><h2><a name="AuthType" id="AuthType">AuthType</a> <a name="authtype" id="authtype">ディレクティブ</a></h2> -<table class="directive"> -<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ユーザ認証の種類</td></tr> -<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>AuthType Basic|Digest</code></td></tr> -<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr> -<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>AuthConfig</td></tr> -<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> -<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> -</table> - <p>このディレクティブは対象ディレクトリで利用するユーザー認証の種類を選びます。 - ただ、現在のところは <code>Basic</code> と <code>Digest</code> しか - 実装されていません。 - - このディレクティブは <code class="directive"><a href="#authname">AuthName</a></code>ディレクティブや - <code class="directive"><a href="#require">Require</a></code> ディレクティブと、 - <code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code> や <code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code> などのディレクティブと - 一緒に利用する必要があります。</p> - -<h3>参照</h3> -<ul> -<li><a href="../howto/auth.html">認証、承認、アクセス制御</a></li> -</ul> -</div> -<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="directive-section"><h2><a name="CGIMapExtension" id="CGIMapExtension">CGIMapExtension</a> <a name="cgimapextension" id="cgimapextension">ディレクティブ</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">説明:</a></th><td>CGI スクリプトのインタープリタの位置を調べるための手法</td></tr> <tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>CGIMapExtension <var>cgi-path</var> <var>.extension</var></code></td></tr> -<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>None</code></td></tr> <tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr> <tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr> <tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> @@ -618,18 +557,19 @@ <table class="directive"> <tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバがコンテントタイプを決定できないときに 送られる MIME コンテントタイプ</td></tr> -<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>DefaultType <var>MIME-type</var></code></td></tr> +<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>DefaultType <var>MIME-type|none</var></code></td></tr> <tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>DefaultType text/plain</code></td></tr> <tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr> <tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>FileInfo</td></tr> <tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> <tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>引数 <code>none</code> は Apache 2.2.7 以降で利用可能</td></tr> </table> - <p>サーバは、MIME のタイプマップからは決定できない - ドキュメントの送信を要求されることがあります。</p> + <p>サーバは、<a class="glossarylink" href="../glossary.html#mime-type" title="用語集を参照">MIME タイプ</a> + のマップからは決定できないドキュメントの送信を要求されることがあります。</p> - <p>サーバは、ドキュメントのコンテントタイプをクライアントに通知する必要が - ありますので、このようにタイプが未知の場合は + <p>サーバは、ドキュメントのコンテントタイプをクライアントに通知するべきです。 + サーバで通常の方法ではこれが判定できない場合は、 <code>DefaultType</code> で指定されたタイプを利用します。 例:</p> @@ -640,6 +580,15 @@ <p>これは <code>.gif</code> という拡張子がファイル名に含まれていない 多くの GIF 画像が含まれているディレクトリに適しているでしょう。</p> + <p>サーバでも管理者でも判定することができない (例えばプロクシの) 場合、 + 誤った情報を与えるよりは MIME タイプの指定がない状態が望ましいことも + あります。この場合は次のようにします :</p> + <div class="example"><p><code> + DefaultType None + </code></p></div> + <p><code>DefaultType None</code> は httpd-2.2.7 + 以降でのみ利用できます。</p> + <p><code class="directive"><a href="#forcetype">ForceType</a></code> ディレクティブと 違って、このディレクティブはデフォルトの MIME タイプを提供するだけで あることに注意してください。ファイル名の拡張子を含め、 @@ -648,6 +597,23 @@ </div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> +<div class="directive-section"><h2><a name="Define" id="Define">Define</a> <a name="define" id="define">ディレクティブ</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>変数の存在を宣言する</td></tr> +<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Define <var>parameter-name</var></code></td></tr> +<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr> +<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> +<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> +</table> + <p><code class="program"><a href="../programs/httpd.html">httpd</a></code> の <code>-D</code> + 引数と同じものです。</p> + <p>このディレクティブを使うと、スタートアップスクリプトに + 記載されている <code>-D</code> 引数を書き換える必要なく、 + <code class="directive"><a href="#ifdefine"><IfDefine></a></code> + セクションを切り替えることができます。</p> + +</div> +<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="directive-section"><h2><a name="Directory" id="Directory"><Directory></a> <a name="directory" id="directory">ディレクティブ</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">説明:</a></th><td>指定のファイルシステムのディレクトリとサブディレクトリとのみに @@ -682,21 +648,21 @@ </Directory> </code></p></div> -<div class="note"> -<p><var>directory-path</var> 引数には注意してください: その引数は -Apache がファイルをアクセスするために使うファイルシステムのパスに -そのままマッチする必要があります。ある <code><Directory></code> に -適用されるディレクティブは、別のシンボリックリンクをたどったりして -同じディレクトリを違うパスでアクセスした場合には適用されません。</p> -</div> + <div class="note"> + <p><var>directory-path</var> 引数には注意してください: その引数は + Apache がファイルをアクセスするために使うファイルシステムのパスに + そのままマッチする必要があります。ある <code><Directory></code> に + 適用されるディレクティブは、別のシンボリックリンクをたどったりして + 同じディレクトリを違うパスでアクセスした場合には適用されません。</p> + </div> <p><code>~</code> という文字を - 付加することで拡張正規表現を利用することもできます。 + 付加することで<a class="glossarylink" href="../glossary.html#regex" title="用語集を参照">正規表現</a>を利用することもできます。 例えば:</p> -<div class="example"><p><code> - <Directory ~ "^/www/.*/[0-9]{3}"> -</code></p></div> + <div class="example"><p><code> + <Directory ~ "^/www/.*/[0-9]{3}"> + </code></p></div> <p>といった指定の場合、<code>/www/</code> 以下にある数字 3 文字のディレクトリにマッチします。</p> @@ -732,7 +698,7 @@ Apache がファイルをアクセスするために使うファイルシステ (<code>/home</code> ディレクトリに対して)。</li> <li><code>/home/.htaccess</code>, <code>/home/web/.htaccess</code>, - <code>/home/web/.htaccess</code> の順にそれらのファイル中の + <code>/home/web/dir/.htaccess</code> の順にそれらのファイル中の FileInfo ディレクティブが適用される。</li> </ul> @@ -773,7 +739,7 @@ Apache がファイルをアクセスするために使うファイルシステ このあたりについては、<a href="../misc/security_tips.html">セキュリティに関するコツ</a>を 参照してください。</strong></p> - <p>ディレクトリセクションは httpd.conf ファイル書きます。 + <p>ディレクトリセクションは <code>httpd.conf</code> ファイルに書きます。 <code class="directive"><Directory></code> ディレクティブは入れ子にすることができず、 <code class="directive"><a href="#limit"><Limit></a></code> や <code class="directive"><a href="#limitexcept"><LimitExcept></a></code> セクションの中にも @@ -802,13 +768,13 @@ Apache がファイルをアクセスするために使うファイルシステ ディレクティブと同様に、<code class="directive"><DirectoryMatch></code> と <code></DirectoryMatch></code> は指定されたディレクトリと そのサブディレクトリにのみ適用されるディレクティブ群を囲います。 - しかし、このディレクティブは引数として正規表現をとります。例えば:</p> + しかし、このディレクティブは引数として<a class="glossarylink" href="../glossary.html#regex" title="用語集を参照">正規表現</a>をとります。例えば:</p> <div class="example"><p><code> <DirectoryMatch "^/www/(.+/)?[0-9]{3}"> </code></p></div> - <p>は /www/ 以下にある数字 3 文字のディレクトリにマッチします。</p> + <p>は <code>/www/</code> 以下にある数字 3 文字のディレクトリにマッチします。</p> <h3>参照</h3> @@ -854,7 +820,7 @@ Apache がファイルをアクセスするために使うファイルシステ <h3>参照</h3> <ul> -<li><a href="../urlmapping.html">URL をファイルシステムの位置に +<li><a href="../urlmapping.html#documentroot">URL をファイルシステムの位置に マップする</a></li> </ul> </div> @@ -923,7 +889,7 @@ Apache がファイルをアクセスするために使うファイルシステ <tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> <tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>バージョン 2.0.44 以降で使用可能</td></tr> </table> - <p>このディレクティブはクライアンにファイルの内容を送るときに + <p>このディレクティブはクライアントにファイルの内容を送るときに <code class="program"><a href="../programs/httpd.html">httpd</a></code> がカーネルの sendfile サポートを使うかどうかを制御します。デフォルトでは、 例えば静的なファイルの配送のように、リクエストの処理にファイルの @@ -943,6 +909,8 @@ Apache がファイルをアクセスするために使うファイルシステ <li>Linux では、sendfile を用いると、 IPv6 使用時に存在する特定ネットワークカードの TCP-checksum オフロードのバグを踏んでしまいます。</li> + <li>Itanium 上の Linux では、sendfile では 2GB 以上の + ファイルを扱うことができません。</li> <li>ネットワークマウントされた <code class="directive"><a href="#documentroot">DocumentRoot</a></code> (例えば NFS や SMB) では、カーネルは自身のキャッシュを使ってネットワークからのファイルを @@ -1047,7 +1015,7 @@ Apache がファイルをアクセスするために使うファイルシステ <p>Microsoft Internet Explorer (MSIE) はデフォルトではサーバが生成したエラーメッセージが 「小さすぎる」ときには無視をして自分自身の「やさしい」エラーメッセージで 置換します。サイズのしきい値はエラーの種類によって異なりますが、 - 一般的にはエラーの文書を 512 バイトよりも多きくすると、MSIE は + 一般的にはエラーの文書を 512 バイトよりも大きくすると、MSIE は サーバが生成したエラーを隠さずに表示します。詳しい情報は Microsoft Knowledge Base の記事 <a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807">Q294807</a> にあります。</p> @@ -1176,6 +1144,15 @@ Apache がファイルをアクセスするために使うファイルシステ そのサブディレクトリの設定は (設定が上書きされなければサブディレクトリの サブディレクトリにも継承されます) <code>FileETag MTime Size</code> と同じになります。</p> + <div class="warning"><h3>警告</h3> + WebDAV を使っていて、<code class="module"><a href="../mod/mod_dav_fs.html">mod_dav_fs</a></code> をストレージプロバイダとして + 使っているような Directory や Location では、デフォルト値を変更しないでください。 + <code class="module"><a href="../mod/mod_dav_fs.html">mod_dav_fs</a></code> では、条件付リクエストでの比較演算に + <code>INode MTime Size</code> + の固定フォーマットを使っています。 + <code class="directive">FileETag</code> で <code>ETag</code> フォーマットを + 変更してしまうと、条件付リクエストでうまく動作しなくなります。 + </div> </div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> @@ -1208,7 +1185,7 @@ Apache がファイルをアクセスするために使うファイルシステ <p><var>filename</var> 引数は、ファイル名かワイルドカード文字列 で、ワイルドカードでは <code>?</code> は一つの文字、<code>*</code> は任意の文字列にマッチします。 - <code>~</code> という文字を付加することで拡張正規表現を使うこともできます。 + <code>~</code> という文字を付加することで<a class="glossarylink" href="../glossary.html#regex" title="用語集を参照">正規表現</a>を使うこともできます。 例えば、</p> <div class="example"><p><code> @@ -1248,7 +1225,7 @@ Apache がファイルをアクセスするために使うファイルシステ <p><code class="directive"><FilesMatch></code> ディレクティブは、 <code class="directive"><a href="#files"><Files></a></code> ディレクティブ同様にその中にあるディレクティブの適用範囲をファイル名で制限します。ただし、 - このディレクティブには正規表現を指定します。 + このディレクティブには<a class="glossarylink" href="../glossary.html#regex" title="用語集を参照">正規表現</a>を指定します。 例えば:</p> <div class="example"><p><code> @@ -1331,7 +1308,7 @@ Apache がファイルをアクセスするために使うファイルシステ <code>Double</code>を指定した場合、2 重の逆引きを行ないます。 つまり、逆引きの後に、その結果に対して正引きを行ないます。正引きの 結果の IP アドレスの中にオリジナルのアドレスと一致するものがなければ - なりません。("tcpwrappers" の用語では PARANOID と呼ばれています。)</p> + なりません。("tcpwrappers" の用語では <code>PARANOID</code> と呼ばれています。)</p> <p><code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code> でホスト名によるアクセス 制御を行なう場合には、 @@ -1359,6 +1336,39 @@ Apache がファイルをアクセスするために使うファイルシステ </div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> +<div class="directive-section"><h2><a name="If" id="If"><If></a> <a name="if" id="if">ディレクティブ</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>実行時、リクエストが条件を満たした場合にのみ適用される +ディレクティブを包含する</td></tr> +<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code><If <var>expression</var>> ... </If></code></td></tr> +<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr> +<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>All</td></tr> +<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> +<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> +</table> + <p><code class="directive"><If></code> ディレクティブは + 実行時に式を評価し、条件式が真になるときにのみ + 内包するディレクティブを適用します。 + 例えば</p> + + <div class="example"><p><code> + <If "$req{Host} = ''"> + </code></p></div> + + <p>上記例は <var>Host:</var> ヘッダの存在しない HTTP/1.0 のリクエストに + マッチします。</p> + +<h3>参照</h3> +<ul> +<li><a href="../sections.html">どのように <Directory>, <Location>, + <Files> セクションが動作するか</a> では、リクエストを受けたときに、 + これらの異なるセクションがどのように組み合わさるかについて記載されています。 + <code class="directive"><If></code> は + <code class="directive"><Files></code> + と同じ処理順と用法になっています。</li> +</ul> +</div> +<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="directive-section"><h2><a name="IfDefine" id="IfDefine"><IfDefine></a> <a name="ifdefine" id="ifdefine">ディレクティブ</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">説明:</a></th><td>起動時にテストが真であるときのみに処理されるディレクティブを @@ -1396,20 +1406,37 @@ Apache がファイルをアクセスするために使うファイルシステ <p><var>parameter-name</var> 引数は、サーバを起動する際に <code class="program"><a href="../programs/httpd.html">httpd</a></code> のコマンドラインに - <code>-D<var>parameter-</var></code> という形で指定すると定義されます。 </p> + <code>-D<var>parameter</var></code> という形で指定するか + あるいは <code class="directive"><a href="#define">Define</a></code> + ディレクティブで指定されると定義されます。 </p> <p><code class="directive"><IfDefine></code> セクションは 入れ子にすることができ、複数のパラメータによるテストをするために使用できます。 例:</p> <div class="example"><p><code> - httpd -DReverseProxy ...<br /> + httpd -DReverseProxy -DUseCache -DMemCache ...<br /> <br /> # httpd.conf<br /> <IfDefine ReverseProxy><br /> <span class="indent"> - LoadModule rewrite_module modules/mod_rewrite.so<br /> - LoadModule proxy_module modules/libproxy.so<br /> + LoadModule proxy_module modules/mod_proxy.so<br /> + LoadModule proxy_http_module modules/mod_proxy_http.so<br /> + <IfDefine UseCache><br /> + <span class="indent"> + LoadModule cache_module modules/mod_cache.so<br /> + <IfDefine MemCache><br /> + <span class="indent"> + LoadModule mem_cache_module modules/mod_mem_cache.so<br /> + </span> + </IfDefine><br /> + <IfDefine !MemCache><br /> + <span class="indent"> + LoadModule disk_cache_module modules/mod_disk_cache.so<br /> + </span> + </IfDefine> + </span> + </IfDefine> </span> </IfDefine> </code></p></div> @@ -1514,17 +1541,6 @@ Apache がファイルをアクセスするために使うファイルシステ Include conf/vhosts/*.conf </code></p></div> - <p><code>apachectl configtest</code> を実行すると、設定をチェックしている時に - 読み込まれたファイルのリストが表示されます:</p> - - <div class="example"><p><code> - root@host# apachectl configtest<br /> - Processing config file: /usr/local/apache2/conf/ssl.conf<br /> - Processing config file: /usr/local/apache2/conf/vhosts/vhost1.conf<br /> - Processing config file: /usr/local/apache2/conf/vhosts/vhost2.conf<br /> - Syntax OK - </code></p></div> - <h3>参照</h3> <ul> <li><code class="program"><a href="../programs/apachectl.html">apachectl</a></code></li> @@ -1560,6 +1576,11 @@ Apache がファイルをアクセスするために使うファイルシステ クライアントが要求すれば、コンテンツの容量を判別できないものを 持続的な接続を通して送るために、チャンクエンコーディングが用いられます。</p> + <p>クライアントが Keep-Alive コネクションを使用している場合、 + そのコネクションを通してどれだけたくさんのリクエストが処理されても、 + それは「リクエスト」1 つとして、MaxRequestsPerChild ディレクティブでは + 数えられます。</p> + <h3>参照</h3> <ul> <li><code class="directive"><a href="#maxkeepaliverequests">MaxKeepAliveRequests</a></code></li> @@ -1582,7 +1603,13 @@ Apache がファイルをアクセスするために使うファイルシステ <p><code class="directive">KeepAliveTimeout</code> を大きな値に設定すると、 負荷の高いサーバにおいてはパフォーマンスの問題を引き起こす場合があります。 タイムアウトが長ければ長いほど、より多くのサーバプロセスが - 活発でないクライアントからの接続の終了を待ち続けることになります。</p> + 活性でないクライアントからの接続の終了を待ち続けることになります。</p> + + <p>名前ベースのバーチャルホストコンテキストでは、 + <code class="directive"><a href="#namevirtualhost">NameVirtualHost</a></code> + のセットの中で最初に定義されたバーチャルホストの値 + (デフォルトホスト) が使われます。 + その他の値は無視されます。</p> </div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> @@ -1628,7 +1655,8 @@ Apache がファイルをアクセスするために使うファイルシステ <code>LOCK</code>, <code>UNLOCK</code>. <strong>メソッド名は 大文字小文字を区別します。</strong> <code>GET</code> を指定した場合には <code>HEAD</code> リクエストにも制限がかかります。<code>TRACE</code> - メソッドに制限をかけることはできません。</p> + メソッドに制限をかけることはできません + (<code class="directive"><a href="#traceenable"><TraceEnable></a></code> 参照)。</p> <div class="warning">アクセス制御が目的の場合は <code class="directive"><a href="#limit"><Limit></a></code> @@ -1765,17 +1793,17 @@ Apache がファイルをアクセスするために使うファイルシステ デフォルト値は、定数 <code>DEFAULT_LIMIT_REQUEST_FIELDS</code> によりコンパイル時に定義されます (配布時には 100 と指定されています)。</p> - <p>LimitRequestBody ディレクティブは、 + <p><code class="directive">LimitRequestBody</code> ディレクティブは、 サーバ管理者が HTTP リクエスト中において許可するリクエストヘッダフィールド数を 指定します。 サーバはこの値には通常のクライアントからのリクエストに含まれるであろう フィールドの数より大きな値が必要とします。 クライアントにより使われた要求ヘッダーフィールドの数が 20 を超えることはほとんどありませんが、 - これは種々のクライアントの実装よって変わり、 + これは種々のクライアントの実装によって変わり、 詳細なコンテントネゴシエーションをするためのブラウザの設定までにも 影響されることがあります。 - オプションの HTTP 拡張はリクエストヘッダフィールドを使って現される場合が + オプションの HTTP 拡張はリクエストヘッダフィールドを使って表される場合が 多くあります。</p> <p>このディレクティブは、 @@ -1797,8 +1825,8 @@ Apache がファイルをアクセスするために使うファイルシステ <table class="directive"> <tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントからの HTTP リクエストのヘッダの サイズを制限する</td></tr> -<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitRequestFieldsize <var>bytes</var></code></td></tr> -<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitRequestFieldsize 8190</code></td></tr> +<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>LimitRequestFieldSize <var>bytes</var></code></td></tr> +<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>LimitRequestFieldSize 8190</code></td></tr> <tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr> <tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> <tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> @@ -1935,9 +1963,10 @@ Apache がファイルをアクセスするために使うファイルシステ という接頭辞を含む形でマッチし、接頭辞を含めて指定する必要があります。</p> <p>URL にはワイルドカードを利用することができます。 - <code>?</code> は任意の一文字、<code>*</code> は任意の文字列にマッチします。 </p> + <code>?</code> は任意の一文字、<code>*</code> は任意の文字列にマッチします。 + どちらのワイルドカードも URL パス中の / にはマッチしません。</p> - <p><code>~</code> という文字を追加することで、拡張正規表現を + <p><code>~</code> という文字を追加することで、<a class="glossarylink" href="../glossary.html#regex" title="用語集を参照">正規表現</a>を 利用することもできます。 例えば:</p> @@ -1953,7 +1982,7 @@ Apache がファイルをアクセスするために使うファイルシステ <p><code class="directive"><Location></code> 機能は、<code class="directive"><a href="#sethandler">SetHandler</a></code> ディレクティブと 組合わせて利用すると特に便利です。 - 例えば、<code>foo.com</code> のブラウザからのみステータスの参照を有効にしたければ、 + 例えば、<code>example.com</code> のブラウザからのみステータスの参照を有効にしたければ、 次のようにすれば良いでしょう。</p> <div class="example"><p><code> @@ -1962,7 +1991,7 @@ Apache がファイルをアクセスするために使うファイルシステ SetHandler server-status<br /> Order Deny,Allow<br /> Deny from all<br /> - Allow from .foo.com<br /> + Allow from .example.com<br /> </span> </Location> </code></p></div> @@ -2016,7 +2045,8 @@ Apache がファイルをアクセスするために使うファイルシステ <p><code class="directive"><LocationMatch></code> ディレクティブは、 <code class="directive"><a href="#location"><Location></a></code> と同じ様に URL により中に書かれたディレクティブの適用範囲を制限します。 - 但し、引数は普通の文字列ではなく、正規表現となります。例えば、</p> + 但し、引数は普通の文字列ではなく、<a class="glossarylink" href="../glossary.html#regex" title="用語集を参照">正規表現</a>となります。 + 例えば、</p> <div class="example"><p><code> <LocationMatch "/(extra|special)/data"> @@ -2292,7 +2322,11 @@ Apache がファイルをアクセスするために使うファイルシステ パス名は<em>変更されません</em>。</p> <p><code class="directive"><a href="#location"><Location></a></code> 内に このオプションを指定しても<strong>無視される</strong>ことに - 注意してください。</p></div></dd> + 注意してください。</p> + <p>このオプションを省略したからといってセキュリティの強化にはなりません。 + なぜなら symlink の検査はレースコンディションを引き起こす可能性があり、 + そのため回避可能になるからです。</p> + </div></dd> <dt><code>Includes</code></dt> @@ -2328,8 +2362,12 @@ Apache がファイルをアクセスするために使うファイルシステ シンボリックリンクの所有ユーザ ID と同じ場合にのみシンボリックリンクを たどれるようにします。 - <div class="note"><h3>注</h3> <code class="directive"><a href="#location"><Location></a></code> 内にこのオプションを - 指定しても無視されます。</div> + <div class="note"><h3>注</h3> <p><code class="directive"><a href="#location"><Location></a></code> 内にこのオプションを + 指定しても無視されます。</p> + <p>このオプションはセキュリティの強化にはなりません。 + なぜなら symlink の検査はレースコンディションを引き起こす可能性があり、 + そのため回避可能になるからです。</p> + </div> </dd> </dl> @@ -2342,6 +2380,13 @@ Apache がファイルをアクセスするために使うファイルシステ <code>+</code> を頭につければ現在の設定に加えられ、 <code>-</code> を付ければ現在の設定から削除されます。</p> + <div class="warning"><h3>警告</h3> + <p><code class="directive">Options</code> で <code>+</code> や + <code>-</code> のついたものを、つけないものと組み合わせて + 指定する構文は正しい構文ではありませんので、期待する結果に + ならないことがあります。</p> + </div> + <p>例えば、<code>+</code> や <code>-</code> を利用しない場合は:</p> <div class="example"><p><code> @@ -2390,63 +2435,6 @@ Apache がファイルをアクセスするために使うファイルシステ </div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> -<div class="directive-section"><h2><a name="Require" id="Require">Require</a> <a name="require" id="require">ディレクティブ</a></h2> -<table class="directive"> -<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>どの認証済みユーザがリソースをアクセスできるかを選択する</td></tr> -<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Require <var>entity-name</var> [<var>entity-name</var>] ...</code></td></tr> -<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr> -<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>AuthConfig</td></tr> -<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> -<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> -</table> - <p>このディレクティブは、どの認証済みのユーザがリソースに - アクセスすることができるかを指定します。 - 以下のような構文になります。</p> - - <dl> - <dt><code>Require user <var>userid</var> [<var>userid</var>] ...</code></dt> - - <dd>指定されたユーザのみ、ディレクトリへのアクセスを許可します。</dd> - - <dt><code>Require group <var>group-name</var> [<var>group-name</var>] ...</code></dt> - - <dd>指定されたグループに属するユーザのみ、ディレクトリへのアクセスを許可します。</dd> - - <dt><code>Require valid-user</code></dt> - - <dd>全ての認証されたユーザに、ディレクトリへのアクセスを許可します。</dd> - </dl> - - <p><code class="directive">Require</code> は、正しく動作するためには <code class="directive"><a href="#authname">AuthName</a></code> 及び <code class="directive"><a href="#authtype">AuthType</a></code> ディレクティブや、 - (ユーザとグループを指定するために) <code class="directive"><a href="../mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code> 及び <code class="directive"><a href="../mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code> - といったディレクティブと共に - 指定する必要があります。 - 例えば:</p> - - <div class="example"><p><code> - AuthType Basic<br /> - AuthName "Restricted Resource"<br /> - AuthUserFile /web/users<br /> - AuthGroupFile /web/groups<br /> - Require group admin - </code></p></div> - - <p>このようにして適用されたアクセス制御は、<strong>全ての</strong>メソッドに - 対して行なわれます。 - <strong>通常は、これが望ましい動作です。</strong> - もし、特定のメソッドに対してのみアクセスの制御を適用し、 - 他のメソッドは制限しない場合には、<code class="directive"><a href="#limit"><Limit></a></code> セクション内に - <code class="directive">Require</code> を - 指定してください。</p> - - -<h3>参照</h3> -<ul> -<li><code class="directive"><a href="#satisfy">Satisfy</a></code></li> -<li><code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code></li> -</ul> -</div> -<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="directive-section"><h2><a name="RLimitCPU" id="RLimitCPU">RLimitCPU</a> <a name="rlimitcpu" id="rlimitcpu">ディレクティブ</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Apache の子プロセスから起動されたプロセスの CPU 消費量を @@ -2493,7 +2481,7 @@ Apache がファイルをアクセスするために使うファイルシステ <tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> <tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> </table> - <p>一つか二つのパラメータををとります。 + <p>一つか二つのパラメータをとります。 最初のパラメータは全プロセスに対するリソースのソフトリミットを設定し、 2 番目のパラメータは最大のリソースリミットを設定します。 パラメータには数字か、オペレーティングシステムの最大となる @@ -2559,56 +2547,6 @@ Apache がファイルをアクセスするために使うファイルシステ </ul> </div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> -<div class="directive-section"><h2><a name="Satisfy" id="Satisfy">Satisfy</a> <a name="satisfy" id="satisfy">ディレクティブ</a></h2> -<table class="directive"> -<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>ホストレベルのアクセス制御とユーザ認証との相互作用を指定</td></tr> -<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Satisfy Any|All</code></td></tr> -<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>Satisfy All</code></td></tr> -<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>ディレクトリ, .htaccess</td></tr> -<tr><th><a href="directive-dict.html#Override">上書き:</a></th><td>AuthConfig</td></tr> -<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> -<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> -<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>バージョン 2.0.51 以降では <code class="directive"><a href="#limit"><Limit></a></code> ディレクティブと <code class="directive"><a href="#limitexcept"><LimitExcept></a></code> ディレクティブの影響を受ける -</td></tr> -</table> - <p><code class="directive"><a href="../mod/mod_authz_host.html#allow">Allow</a></code> と - <code class="directive"><a href="#require">Require</a></code> の両方が使われているときの - アクセスポリシーを設定します。パラメータは <code>All</code> か <code>Any</code> - です。このディレクティブはある場所へのアクセスがユーザ名/パスワード - <em>と</em>クライアントのホストのアドレスで制限されているときにのみ - 役立ちます。デフォルトの動作 (<code>All</code>) はクライアントがアドレスによる - アクセス制限を満たし、<em>かつ</em>正しいユーザ名とパスワードを入力することを - 要求します。<code>Any</code> では、クライアントはホストの制限を満たすか、 - 正しいユーザ名とパスワードの入力をするかをすればアクセスを許可されます。 - これは、ある場所をパスワードで保護するけれど、特定のアドレスからの - クライアントにはパスワードの入力を要求せずにアクセスを許可する、 - というようなときに使用できます。</p> - - <p>例えば、同じネットワーク上にいる人にはウェブサイトのある部分について - 無制限のアクセスを許したいけれど、外のネットワークの人には - パスワードを提供させるようにするためには、次のような設定をすることが - できます:</p> - - <div class="example"><p><code> - Require valid-user<br /> - Allow from 192.168.1<br /> - Satisfy Any - </code></p></div> - - <p>バージョン 2.0.51 からは - <code class="directive"><a href="#limit"><Limit></a></code> セクションと - <code class="directive"><a href="#limitexcept"><LimitExcept></a></code> セクションを使用することで - <code class="directive">Satisfy</code> ディレクティブが - 適用されるメソッドを制限することが - できるようになりました。</p> - -<h3>参照</h3> -<ul> -<li><code class="directive"><a href="../mod/mod_authz_host.html#allow">Allow</a></code></li> -<li><code class="directive"><a href="#require">Require</a></code></li> -</ul> -</div> -<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="directive-section"><h2><a name="ScriptInterpreterSource" id="ScriptInterpreterSource">ScriptInterpreterSource</a> <a name="scriptinterpretersource" id="scriptinterpretersource">ディレクティブ</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">説明:</a></th><td>CGI スクリプトのインタープリタの位置を調べるための手法</td></tr> @@ -2714,7 +2652,9 @@ Apache がファイルをアクセスするために使うファイルシステ <tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> </table> <p><code class="directive">ServerAlias</code> ディレクティブは、<a href="../vhosts/name-based.html">ネームベースのバーチャルホスト</a>において - 使用するホストの別名を指定します。</p> + 使用するホストの別名を指定します。 + 適切であれば、<code class="directive">ServerAlias</code> ディレクティブでは + ワイルドカードを使うこともできます。</p> <div class="example"><p><code> <VirtualHost *><br /> @@ -2733,7 +2673,7 @@ Apache がファイルをアクセスするために使うファイルシステ <div class="directive-section"><h2><a name="ServerName" id="ServerName">ServerName</a> <a name="servername" id="servername">ディレクティブ</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバが自分自身を示すときに使うホスト名とポート</td></tr> -<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerName <var>fully-qualified-domain-name</var>[:<var>port</var>]</code></td></tr> +<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> <tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr> <tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> <tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> @@ -2741,7 +2681,7 @@ Apache がファイルをアクセスするために使うファイルシステ <code class="directive">Port</code> ディレクティブの機能も含みます。</td></tr> </table> <p><code class="directive">ServerName</code> ディレクティブは、 - サーバが自分自身を示すホスト名とポートを設定します。 + サーバが自分自身を示すスキーム名、ホスト名とポート番号を設定します。 これは、リダイレクトする URL を生成する際に利用されます。 例えば、ウェブサーバを動かしているマシンは <code>simple.example.com</code> で、DNS のエイリアス <code>www.example.com</code> もあるときに、 @@ -2765,16 +2705,25 @@ Apache がファイルをアクセスするために使うファイルシステ <code class="directive">ServerName</code> はこのバーチャルホストにマッチするために 何がリクエストの Host: ヘッダに現れる必要があるのかを指定します。</p> + <p>SSL を処理するデバイス、例えばリーバスプロクシやロードバランサや + SSL 処理軽減アプライアンスの裏側でサーバが稼動する場合もあるでしょう。 + そういった場合では、クライアントが接続するときに使う + <code>https://</code> スキームとポート番号を <code class="directive">ServerName</code> + ディレクティブで指定して、自己参照 URL が正しく生成できるようにします。</p> + <p>自己参照 URL (例えば <code class="module"><a href="../mod/mod_dir.html">mod_dir</a></code> モジュールによるものなど) が指定されたポートを使うか、クライアントのリクエストのポート番号を使うかを 決定する設定は <code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code> + ディレクティブと <code class="directive"><a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></code> ディレクティブを参照してください。</p> + <h3>参照</h3> <ul> <li><a href="../dns-caveats.html">DNS と Apache に関する話</a></li> <li><a href="../vhosts/">Apache バーチャルホスト説明書</a></li> <li><code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code></li> +<li><code class="directive"><a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></code></li> <li><code class="directive"><a href="#namevirtualhost">NameVirtualHost</a></code></li> <li><code class="directive"><a href="#serveralias">ServerAlias</a></code></li> </ul> @@ -2865,7 +2814,7 @@ Apache がファイルをアクセスするために使うファイルシステ <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="directive-section"><h2><a name="ServerTokens" id="ServerTokens">ServerTokens</a> <a name="servertokens" id="servertokens">ディレクティブ</a></h2> <table class="directive"> -<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Server HTTP 応答ヘッダを設定する</td></tr> +<tr><th><a href="directive-dict.html#Description">説明:</a></th><td><code>Server</code> HTTP 応答ヘッダを設定する</td></tr> <tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerTokens Major|Minor|Min[imal]|Prod[uctOnly]|OS|Full</code></td></tr> <tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ServerTokens Full</code></td></tr> <tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr> @@ -2959,6 +2908,11 @@ Apache がファイルをアクセスするために使うファイルシステ <p><code>None</code> という値を設定することで、 前の方の <code class="directive">SetHandler</code> で定義された設定を無効にすることが できます。</p> + <p><strong>注意:</strong>SetHandler はデフォルトのハンドラをオーバーライド + しますので、通常の挙動、たとえば、スラッシュ (/) で終わる URL が + リクエストされたときにディレクトリやインデックスファイルを返すよう取り扱う挙動は、 + 行われなくなります。 + </p> <h3>参照</h3> @@ -3033,30 +2987,68 @@ Apache がファイルをアクセスするために使うファイルシステ 待つ時間を設定</td></tr> <tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>TimeOut <var>seconds</var></code></td></tr> <tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>TimeOut 300</code></td></tr> -<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr> +<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト</td></tr> <tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> <tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> </table> - <p><code class="directive">TimeOut</code> ディレクティブは、現在のところ - 以下の三つの待ち時間についての定義を行います:</p> + <p><code class="directive">TimeOut</code> ディレクティブは、 + 様々な条件下での I/O 待ち時間を定義します:</p> <ol> - <li>GET リクエストを受け取るのにかかる総時間</li> + <li>クライアントからのデータを読み込む時。 + 受信バッファが空になっていて、TCP パケットが届くまで + 待つ時間の長さ</li> + + <li>クライアントに対してデータを送り出す時。 + 送信バッファがいっぱいで、パケットの受信完了 <span class="transnote">(<em>訳注:</em> ACK)</span> + が届くまで待つ時間の長さ</li> - <li>POST や PUTリクエストにおいて、次の TCP パケットが届くまでの待ち時間</li> + <li><code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code> 内で、CGI スクリプトが出力を + 返すまでの待ち時間の長さ</li> - <li>レスポンスを返す際、TCP の ACK が帰ってくるまでの時間</li> + <li><code class="module"><a href="../mod/mod_ext_filter.html">mod_ext_filter</a></code> 内で、フィルタ処理で出力を + 待つ時間の長さ</li> + + <li><code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> 内で、 + <code class="directive"><a href="../mod/mod_proxy.html#proxytimeout">ProxyTimeout</a></code> + が設定されていない場合のデフォルトの待ち時間</li> </ol> - - <p>将来には別々の設定をすることが可能にできるよう考慮中です。 - Apache 1.2 以前はタイマーは 1200 がデフォルトでしたが、 - 300 に下げられました。300 でもほとんどの場合は十分すぎる値です。 - コード中の変な場所にまだパケットを送る際にタイマをリセットしない - 場所があるかもしれないので、デフォルトをより小さい値にはしていません。</p> </div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> +<div class="directive-section"><h2><a name="TraceEnable" id="TraceEnable">TraceEnable</a> <a name="traceenable" id="traceenable">ディレクティブ</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">説明:</a></th><td><code>TRACE</code> メソッドのリクエストに対する応答方法を決める +</td></tr> +<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>TraceEnable <var>[on|off|extended]</var></code></td></tr> +<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>TraceEnable on</code></td></tr> +<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr> +<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> +<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 1.3.34, 2.0.55 以降</td></tr> +</table> + <p>Apache のコア機能<span class="transnote">(<em>訳注:</em> <code class="module"><a href="../mod/core.html">core</a></code>)</span>と + <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> 両方の <code>TRACE</code> + の挙動をオーバーライドします。デフォルトの <code>TraceEnable on</code> + は、リクエストボディを受け入れないような、RFC2616 に準拠した + <code>TRACE</code> リクエストを受け付けます。 + <code>TraceEnale off</code> と設定すると、コアサーバと + <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> は <code>405</code> (メソッド不許可) + エラーをクライアントに返します。</p> + + <p>最後に、テストや調査目的などの限定用途として、仕様に準拠しない + <code>TraceEnable extended</code> を使って、リクエストボディを + 受け付けるように挙動を変更できます。(オリジンサーバとしての) + Apache のコアでは、リクエストボディのサイズは 64k ( + <code>Transfer-Encoding: chunked</code> が使われている場合は + chunk ヘッダ用に +8k) に制限されます。 + Apache のコアは、ヘッダと全ての chunk ヘッダをレスポンスの + ボディとして返却します。 + proxy サーバとしては、リクエストボディのサイズは 64k に制限されません。</p> + +</div> +<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="directive-section"><h2><a name="UseCanonicalName" id="UseCanonicalName">UseCanonicalName</a> <a name="usecanonicalname" id="usecanonicalname">ディレクティブ</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバが自分自身の名前とポートを決定する方法を設定する</td></tr> @@ -3114,6 +3106,53 @@ Apache がファイルをアクセスするために使うファイルシステ <h3>参照</h3> <ul> +<li><code class="directive"><a href="#usecanonicalphysicalport">UseCanonicalPhysicalPort</a></code></li> +<li><code class="directive"><a href="#servername">ServerName</a></code></li> +<li><code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code></li> +</ul> +</div> +<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> +<div class="directive-section"><h2><a name="UseCanonicalPhysicalPort" id="UseCanonicalPhysicalPort">UseCanonicalPhysicalPort</a> <a name="usecanonicalphysicalport" id="usecanonicalphysicalport">ディレクティブ</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>自分自身の名前とポート番号を解決する方法を設定する +</td></tr> +<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>UseCanonicalPhysicalPort On|Off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>UseCanonicalPhysicalPort Off</code></td></tr> +<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ</td></tr> +<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>Core</td></tr> +<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td>core</td></tr> +</table> + <p>さまざまな局面で <em>自己参照</em> URL -- それ自体のサーバを参照する URL + を作ることになります。<code>UseCanonicalPhysicalPort On</code> と設定すると、 + <code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code> に従って別名を + 生成する場合に、実際の物理ポート番号を使って構成するようになります。 + <code>UseCanonicalPhysicalPort Off</code> の場合は、実際の物理ポート番号は + 使用せず、設定された情報を元にポート番号を決めます。</p> + + <div class="note"><h3>注意</h3> + <p>物理ポートが使われる場合の順番は次のようになっています:<br /><br /> + <code>UseCanonicalName On</code></p> + <ul> + <li><code>ServerName</code> で指定されているポート番号</li> + <li>物理ポート番号</li> + <li>デフォルトのポート番号</li> + </ul> + <code>UseCanonicalName Off | DNS</code> + <ul> + <li><code>Host:</code> ヘッダをパースして取得されるポート番号</li> + <li>物理ポート番号</li> + <li><code>ServerName</code> で指定されているポート番号</li> + <li>デフォルトのポート番号</li> + </ul> + + <p><code>UseCanonicalPhysicalPort Off</code> で、 + 物理ポート番号が上記の順序付けから除外されます。</p> + </div> + + +<h3>参照</h3> +<ul> +<li><code class="directive"><a href="#usecanonicalname">UseCanonicalName</a></code></li> <li><code class="directive"><a href="#servername">ServerName</a></code></li> <li><code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code></li> </ul> @@ -3144,7 +3183,7 @@ Apache がファイルをアクセスするために使うファイルシステ <ul> <li>バーチャルホストの IP アドレス</li> - <li>バーチャルホストの IP に対応する完全なドメイン名</li> + <li>バーチャルホストの IP に対応する完全なドメイン名 (非推奨)</li> <li><code>NameVirtualHost *</code> と共に使われる、 すべての IP アドレスにマッチする文字 <code>*</code></li> @@ -3156,14 +3195,14 @@ Apache がファイルをアクセスするために使うファイルシステ <div class="example"><h3>例</h3><p><code> <VirtualHost 10.1.2.3><br /> <span class="indent"> - ServerAdmin webmaster@host.foo.com<br /> - DocumentRoot /www/docs/host.foo.com<br /> - ServerName host.foo.com<br /> - ErrorLog logs/host.foo.com-error_log<br /> - TransferLog logs/host.foo.com-access_log<br /> + ServerAdmin webmaster@host.example.com<br /> + DocumentRoot /www/docs/host.example.com<br /> + ServerName host.example.com<br /> + ErrorLog logs/host.example.com-error_log<br /> + TransferLog logs/host.example.com-access_log<br /> </span> </VirtualHost> - </code></p></div> + </code></p></div> <p>IPv6 アドレスはオプションのポート番号の指定と区別するために、 角括弧で括って指定する必要があります。次は IPv6 の例です:</p> @@ -3178,7 +3217,7 @@ Apache がファイルをアクセスするために使うファイルシステ TransferLog logs/host.example.com-access_log<br /> </span> </VirtualHost> - </code></p></div> + </code></p></div> <p>各々のバーチャルホストにはそれぞれ違う IP アドレス、ポート番号 もしくはホスト名に対応する必要があり、 @@ -3188,21 +3227,6 @@ Apache がファイルをアクセスするために使うファイルシステ (OSがサポートしていれば) <code>ifconfig alias</code> コマンドにより 達成できます)。</p> - <p><code>:port</code> といった形式で記述することにより、 - マッチさせるポートを変更可能です。 - この指定をしない場合には、主サーバ設定における - 一番最後に <code><a href="#port">Port</a></code> で指定されたポートが - デフォルトとなります。 - <code>:*</code> を指定することにより、 - アドレス上の全てのポートにマッチします。(<code>_default_</code> のときは - これを使うことが推奨されています。)</p> - - <p><strong>セキュリティに関して</strong>: - サーバーを起動した以外のユーザがログファイルが保管されるディレクトリに - 書き込み可能なときになぜセキュリティが破られる可能性があるかの詳細は - <a href="../misc/security_tips.html">セキュリティに関するコツ</a> を - 参照してください。</p> - <div class="note"><h3>注意点</h3> <p><code class="directive"><VirtualHost></code> は Apache が Listen する IP アドレスには影響を与え<strong>ません</strong>。 @@ -3224,21 +3248,18 @@ Apache がファイルをアクセスするために使うファイルシステ <p><code>:port</code> といった形式で記述することにより、 マッチさせるポートを変更可能です。 この指定をしない場合には、主サーバ設定における - 一番最後に <code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code> で指定された - ポートがデフォルトとなります。 - <code>:*</code> を指定することにより、 - アドレス上の全てのポートにマッチします。(<code>_default_</code> のときは - これを使うことが推奨されています。)</p> - - <p><code>:port</code> といった形式で記述することにより、 - マッチさせるポートを変更可能です。 - この指定をしない場合には、主サーバ設定における 一番最後に <code><a href="#port">Port</a></code> で指定されたポートが デフォルトとなります。 <code>:*</code> を指定することにより、 アドレス上の全てのポートにマッチします。(<code>_default_</code> のときは これを使うことが推奨されています。)</p> + <p><code class="directive"><VirtualHost></code> ブロックごとに + <code class="directive"><a href="#servername">ServerName</a></code> を指定すべきです。 + もしなければ、メインサーバ設定の + <code class="directive"><a href="#servername">ServerName</a></code> + が継承されます</p> + <div class="warning"><h3>セキュリティ</h3> <p>サーバーを起動した以外のユーザがログファイルが保管されるディレクトリに 書き込み可能なときになぜセキュリティが破られる可能性があるかの詳細は |