mod_alias.html.ja.utf8 revision b43f840409794ed298e8634f6284741f193b6c4f
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_alias - Apache HTTP サーバ</title>
<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<body>
<div id="page-header">
<p class="menu"><a href="/mod/">モジュール</a> | <a href="/mod/directives.html">ディレクティブ</a> | <a href="/faq/">FAQ</a> | <a href="/glossary.html">用語</a> | <a href="/sitemap.html">サイトマップ</a></p>
<p class="apache">Apache HTTP サーバ バージョン 2.5</p>
<div id="path">
<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.5</a> > <a href="./">モジュール</a></div>
<div id="page-content">
<div id="preamble"><h1>Apache モジュール mod_alias</h1>
<div class="toplang">
<p><span>翻訳済み言語: </span><a href="/en/mod/mod_alias.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="/fr/mod/mod_alias.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
<a href="/tr/mod/mod_alias.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>ホストファイルシステム上のいろいろな違う場所を
ドキュメントツリーにマップする機能と、
URL のリダイレクトを行なう機能を提供する</td></tr>
<h3>概要</h3>
<p>このモジュールのディレクティブはサーバにリクエストが到着したときに
URL の操作や制御をすることを可能にします。<code class="directive"><a href="#alias">Alias</a></code>
ディレクティブと <code class="directive"><a href="#scriptalias">ScriptAlias</a></code>
ディレクティブは
URL とファイルシステムのパスをマップするために使用されます。これは
の下にないドキュメントをウェブのドキュメントツリーの一部として
送られるようにします。<code class="directive"><a href="#scriptalias">ScriptAlias</a></code>
ディレクティブにはマップ先のディレクトリが CGI
スクリプトのみであることを示すという追加の効果があります。
</p>
<p><code class="directive"><a href="#redirect">Redirect</a></code> ディレクティブは
クライアントに違った
URL に新しいリクエストを送るように指示します。これは、
リソースが新しい場所に移動したときによく使用されます。</p>
で提供されるツールを使用してください。</p>
</div>
<div id="quickview"><h3 class="directives">ディレクティブ</h3>
<ul id="toc">
</ul>
<h3>トピック</h3>
<ul id="topics">
</ul><h3>参照</h3>
<ul class="seealso">
</ul></div>
<div class="section">
<h2><a name="order" id="order">処理の順番</a></h2>
<p>様々なコンテキスト中での Alias や Redirect は他のディレクティブと
従って処理されます。ただし、(例えば <code class="directive"><a href="/mod/core.html#virtualhost"><VirtualHost></a></code> セクションの中のように) 複数の Alias や Redirect が
同じコンテキスト中に現れた場合は決まった順番で処理されます。</p>
<p>まず、Alias の前にすべての Redirect が処理されます。ですから、<code class="directive"><a href="#redirect">Redirect</a></code> か <code class="directive"><a href="#redirectmatch">RedirectMatch</a></code> にマッチするリクエストには
Alias は決して適用されません。次に、Alias と Redirect が設定ファイル中の
順番に適用され、最初にマッチしたものが優先されます。</p>
<p>ですから、二つ以上のディレクティブが同じパスに適用されるときは、
すべてのディレクティブの効果を得るためにはより詳しいパスを先に書く
必要があります。例えば、次の設定は期待通りの動作をします:</p>
<div class="example"><p><code>
Alias /foo /gaq
</code></p></div>
<p>しかし、上記の二つのディレクティブの順番が逆になると、
<code>/foo</code> <code class="directive"><a href="#alias">Alias</a></code> が
決して適用されることはありません。</p>
</div>
<div class="directive-section"><h2><a name="Alias" id="Alias">Alias</a> <a name="alias" id="alias">ディレクティブ</a></h2>
<table class="directive">
<var>file-path</var>|<var>directory-path</var></code></td></tr>
</table>
<p><code class="directive">Alias</code> ディレクティブはドキュメントを
ローカルファイルシステムの
以外の場所に保管することを可能にします。
URL の (% が復号された) パスが <var>url-path</var> で始まるものは
<var>directory-filename</var>
で始まるローカルファイルにマップされます。</p>
<div class="example"><h3>例</h3><p><code>
</code></p></div>
<p>http://myserver/image/foo.gif へのリクエストに対して、サーバは
<p>もし <var>url-path</var> の最後に /
を書いたなら、サーバがエイリアスを展開するためには、最後の /
が必要になることに注意してください。すなわち、<code>Alias /icons/
<code>/icons</code> という url はエイリアスされません。</p>
<p>エイリアスの<em>行き先</em>を含んでいる <code class="directive"><a href="/mod/core.html#directory"><Directory></a></code>
セクションを追加する必要があるかもしれないことに注意してください。
セクションを調べる前に行なわれますので、
エイリアスの行き先の <code class="directive"><a href="/mod/core.html#directory"><Directory></a></code> セクションのみ
効果があります。
セクションはエイリアスが処理される前に実行されますので、
こちらは適用されます。)</p>
<p>特に、<code>Alias</code> を
ディレクトリの外側に配置した場合は、行き先のディレクトリに対する
アクセス権限を明示的に制限しなければならないでしょう。</p>
<div class="example"><h3>例</h3><p><code>
<span class="indent">
Order allow,deny<br />
Allow from all<br />
</span>
</Directory>
</code></p></div>
</div>
<div class="directive-section"><h2><a name="AliasMatch" id="AliasMatch">AliasMatch</a> <a name="aliasmatch" id="aliasmatch">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>正規表現を使って URL をファイルシステムの位置にマップする</td></tr>
<var>file-path</var>|<var>directory-path</var></code></td></tr>
</table>
<p>このディレクティブは <code class="directive"><a href="#alias">Alias</a></code>
とほとんど同じですが、簡単な先頭からのマッチを行なうのではなく、
標準正規表現を利用します。ここで指定された正規表現と URL のパス
が合うかどうかを調べ、合う場合は括弧で括られたマッチを
与えられた文字列で置き換え、それをファイル名として使用します。たとえば、
<code>/icons</code> ディレクトリを使う
ためには以下のようなものが使用できます:</p>
<div class="example"><p><code>
</code></p></div>
</div>
<div class="directive-section"><h2><a name="Redirect" id="Redirect">Redirect</a> <a name="redirect" id="redirect">ディレクティブ</a></h2>
<table class="directive">
送る</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Redirect [<var>status</var>] <var>URL-path</var>
<var>URL</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
</table>
<p>Redirect ディレクティブは古い URL を新しいものへマップします。
新しい URL がクライアントに返されます。そして、
クライアントは新しいアドレスをもう一回取得しようとします。
<var>URL-path</var> (% が復号された) パスで始まるドキュメントへの
すべてのリクエストは <var>URL</var> で始まる新しい
(% が符号化された) URL へのリダイレクトエラーが返されます。</p>
<div class="example"><h3>例</h3><p><code>
Redirect /service http://foo2.bar.com/service
</code></p></div>
<p>クライアントは http://myserver/service/foo.txt
へのリクエストを行なうと、代わりに http://foo2.bar.com/service/foo.txt
をアクセスするように告げられます。</p>
<div class="note"><h3>注意</h3><p>設定ファイル中の順番に関わらず、
Redirect 系のディレクティブは Alias
ディレクティブと ScriptAlias ディレクティブよりも優先されます。
また、.htaccess ファイルや <code class="directive"><a href="/mod/core.html#directory"><Directory></a></code>
セクションの中で使われていたとしても、<var>URL-path</var>
は相対パスではなく、完全な URL でなければなりません。</p></div>
<p>もし <var>status</var> 引数が与えられていなければ、リダイレクトは
"temporary" (HTTP ステータス 302) になります。これはクライアントに
リソースが一時的に移動したということを示します。<var>Status</var>
引数は 他の HTTP のステータスコードを返すために使用することができます:</p>
<dl>
<dt>permanent</dt>
<dd>永久にリダイレクトをするステータス (301) を返します。
これはリソースが永久に移動したということを意味します。</dd>
<dt>temp</dt>
<dd>一時的なリダイレクトステータス (302)
を返します。これがデフォルトです。</dd>
<dt>seeother</dt>
<dd>"See Other" ステータス (303) を返します。
これはリソースが他のもので置き換えられたことを意味します。</dd>
<dt>gone</dt>
<dd>"Gone" ステータス (410) を返します。これはリソースが永久に
削除されたことを意味します。このステータスが使用された場合、
<var>url</var> 引数は省略されなければなりません。</dd>
</dl>
<p><var>Status</var> の値にステータスコードを数値で与えることで
他のステータスコードも返すことができます。ステータスが 300 と 399
の間にある場合、<var>url</var> 引数は存在していなければいけません。
その他の場合は省略されていなければなりません。ただし、
ステータスは Apache のコードが知っているものである必要があります
を見てください)。</p>
<p>例:</p>
<div class="example"><h3>例</h3><p><code>
Redirect permanent /one http://example.com/two<br />
Redirect 303 /three http://example.com/other
</code></p></div>
</div>
<div class="directive-section"><h2><a name="RedirectMatch" id="RedirectMatch">RedirectMatch</a> <a name="redirectmatch" id="redirectmatch">ディレクティブ</a></h2>
<table class="directive">
外部へのリダイレクトを送る</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>RedirectMatch [<var>status</var>] <var>regex</var>
<var>URL</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
</table>
<p>このディレクティブは <code class="directive"><a href="#redirect">Redirect</a></code>
とほとんど同じですが、簡単な先頭からのマッチを行なうのではなく、
標準正規表現を利用します。ここで指定された正規表現と URL-path
が合うかどうかを調べ、合う場合は括弧で括られたマッチを
与えられた文字列で置き換え、それをファイル名として使用します。
たとえば、すべての GIF ファイルを別サーバの同様な名前の JPEG
ファイルにリダイレクトするには、以下のようなものを使います:
</p>
<div class="example"><p><code>
RedirectMatch (.*)\.gif$ http://www.anotherserver.com$1.jpg
</code></p></div>
</div>
<div class="directive-section"><h2><a name="RedirectPermanent" id="RedirectPermanent">RedirectPermanent</a> <a name="redirectpermanent" id="redirectpermanent">ディレクティブ</a></h2>
<table class="directive">
リダイレクトを送る</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>RedirectPermanent <var>URL-path</var> <var>URL</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
</table>
<p>このディレクティブはクライアントに Redirect が永久的なもの
(ステータス 301) であることを知らせます。
<code>Redirect permanent</code> とまったく同じです。</p>
</div>
<div class="directive-section"><h2><a name="RedirectTemp" id="RedirectTemp">RedirectTemp</a> <a name="redirecttemp" id="redirecttemp">ディレクティブ</a></h2>
<table class="directive">
リダイレクトを送る</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>RedirectTemp <var>URL-path</var> <var>URL</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル, バーチャルホスト, ディレクトリ, .htaccess</td></tr>
</table>
<p>このディレクティブはクライアントに Redirect
が一時的なものである (ステータス 302) ことを知らせます。
<code>Redirect temp</code> とまったく同じです。</p>
</div>
<div class="directive-section"><h2><a name="ScriptAlias" id="ScriptAlias">ScriptAlias</a> <a name="scriptalias" id="scriptalias">ディレクティブ</a></h2>
<table class="directive">
CGI スクリプトに指定</td></tr>
<var>file-path</var>|<var>directory-path</var></code></td></tr>
</table>
<p><code class="directive">ScriptAlias</code> ディレクティブは、対象ディレクトリに
ハンドラで処理される CGI
スクリプトがあることを示す以外は
<code class="directive"><a href="#alias">Alias</a></code>
ディレクティブと同じ振る舞いをします。
URL の (% が復号された) パスが <var>URL-path</var> で始まるものは
ローカルのファイルシステムの
フルパスである二番目の引数にマップされます。</p>
<div class="example"><h3>例</h3><p><code>
</code></p></div>
へのリクエストに対してサーバはスクリプト
</div>
<div class="directive-section"><h2><a name="ScriptAliasMatch" id="ScriptAliasMatch">ScriptAliasMatch</a> <a name="scriptaliasmatch" id="scriptaliasmatch">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>URL を正規表現を使ってファイルシステムの位置へマップし、マップ先を
CGI スクリプトに指定</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ScriptAliasMatch <var>regex</var>
<var>file-path</var>|<var>directory-path</var></code></td></tr>
</table>
<p>このディレクティブは <code class="directive"><a href="#scriptalias">ScriptAlias</a></code>
とほとんど同じですが、簡単な先頭からのマッチを行なうのではなく、
標準正規表現を利用します。ここで指定された正規表現と URL-path
が合うかどうかを調べ、合う場合は括弧で括られたマッチを
与えられた文字列で置き換え、それをファイル名として使用します。
たとえば、標準の <code>/cgi-bin</code>
を使用するようにするためには、以下のようなものを使います:
</p>
<div class="example"><p><code>
</code></p></div>
</div>
</div>
<div class="bottomlang">
<p><span>翻訳済み言語: </span><a href="/en/mod/mod_alias.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="/fr/mod/mod_alias.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
<a href="/tr/mod/mod_alias.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div><div id="footer">
<p class="apache">Copyright 2012 The Apache Software Foundation.<br />この文書は <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a> のライセンスで提供されています。.</p>
<p class="menu"><a href="/mod/">モジュール</a> | <a href="/mod/directives.html">ディレクティブ</a> | <a href="/faq/">FAQ</a> | <a href="/glossary.html">用語</a> | <a href="/sitemap.html">サイトマップ</a></p></div>
</body></html>