env.xml.ja revision 27dcd8d81085fd60aadcd8a9bad35a607b26b758
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder<!DOCTYPE manualpage SYSTEM "/style/manualpage.dtd">
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder<?xml-stylesheet type="text/xsl" href="/style/manual.ja.xsl"?>
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder<!-- English Revision: 659902:782860 (outdated) -->
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder Licensed to the Apache Software Foundation (ASF) under one or more
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder contributor license agreements. See the NOTICE file distributed with
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder this work for additional information regarding copyright ownership.
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder The ASF licenses this file to You under the Apache License, Version 2.0
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder (the "License"); you may not use this file except in compliance with
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder the License. You may obtain a copy of the License at
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder Unless required by applicable law or agreed to in writing, software
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder distributed under the License is distributed on an "AS IS" BASIS,
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder See the License for the specific language governing permissions and
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder limitations under the License.
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder <p>Apache HTTP サーバは<em>環境変数</em>と呼ばれる、名前のついた
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder 変数に情報を記憶する仕組みを提供しています。この情報はログ収集や
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder アクセス制御などのいろいろな操作を制御するために使うことができます。
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder これらの変数は CGI スクリプトなどの外部プログラムと通信するためにも
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder 使われます。この文書はそれらの変数の操作方法と使用方法をいくつか
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder システムによって制御されている環境変数と同じではありません。
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder 実際は、これらの変数は Apache の内部構造の中に記憶され、操作されています。
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder それらは、CGI や SSI スクリプトに渡されたときだけ、実際の
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder オペレーティングシステムの環境変数になります。サーバ自身が
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder 実行されているオペレーティングシステムの環境を操作したい場合は、
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder オペレーティングシステムのシェルが提供している標準の環境変数の
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder 操作方法を使わなければなりません。</p>
d4aed7a2eea6b546c0d9520d85038addb7beb12fChristian Maeder </modulelist>
d4aed7a2eea6b546c0d9520d85038addb7beb12fChristian Maeder <directivelist>
d4aed7a2eea6b546c0d9520d85038addb7beb12fChristian Maeder <directive module="mod_setenvif">BrowserMatch</directive>
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder <directive module="mod_setenvif">BrowserMatchNoCase</directive>
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder <directive module="mod_env">PassEnv</directive>
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder <directive module="mod_rewrite">RewriteRule</directive>
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder <directive module="mod_env">SetEnv</directive>
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder <directive module="mod_setenvif">SetEnvIf</directive>
d4aed7a2eea6b546c0d9520d85038addb7beb12fChristian Maeder <directive module="mod_setenvif">SetEnvIfNoCase</directive>
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder <directive module="mod_env">UnsetEnv</directive>
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder </directivelist>
bb2c1beb7ab66a49627a2a34df80864a3c65cc83Christian Maeder <p>Apache において環境変数を設定する一番基本的な方法は、
bb2c1beb7ab66a49627a2a34df80864a3c65cc83Christian Maeder >SetEnv</directive> ディレクティブを使用することです。
bb2c1beb7ab66a49627a2a34df80864a3c65cc83Christian Maeder <directive module="mod_env">PassEnv</directive>
bb2c1beb7ab66a49627a2a34df80864a3c65cc83Christian Maeder ディレクティブにより、Apache が起動されたシェルの
bb2c1beb7ab66a49627a2a34df80864a3c65cc83Christian Maeder 環境変数を渡すこともできます。</p>
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder <p>より柔軟性を高めるために、mod_setenvif
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder で提供されているディレクティブを使用することで、リクエストの
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder 特性に基づいて環境変数を設定することができます。例えば、特定のブラウザ
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder (User-Agent) のリクエストや特定の Referer [意図的な綴りです]
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder <transnote>正しい綴りは referrer ですが、HTTP の仕様では Referer
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder となっています</transnote>ヘッダが見つかったときのみ変数を設定することができます。
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder mod_rewrite の <directive module="mod_rewrite">RewriteRule</directive>
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder オプションを使用することで、
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder より柔軟な設定を行なうことができます。</p>
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder <p>mod_unique_id は、非常に限られた条件の下で
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder 「すべて」のリクエストについて、一意であることが保証されている値を環境変数
bb2c1beb7ab66a49627a2a34df80864a3c65cc83Christian Maeder <p>Apache の設定ファイルで設定された環境変数とシェルから渡される
bb2c1beb7ab66a49627a2a34df80864a3c65cc83Christian Maeder 環境変数に加えて、CGI スクリプトと SSI ページには <a
bb2c1beb7ab66a49627a2a34df80864a3c65cc83Christian Maeder href="http://cgi-spec.golux.com">CGI の仕様</a>で要求されている、
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder リクエストのメタ情報を持った環境変数の組が提供されます。</p>
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder <li>環境を操作するディレクティブを使って標準 CGI
d4aed7a2eea6b546c0d9520d85038addb7beb12fChristian Maeder 変数を上書きしたり変更したりすることはできません。</li>
d4aed7a2eea6b546c0d9520d85038addb7beb12fChristian Maeder <li>CGI スクリプトを起動するために <program>suexec</program>
d4aed7a2eea6b546c0d9520d85038addb7beb12fChristian Maeder が使用されている場合、CGI スクリプトが起動するために、環境変数は<em
d4aed7a2eea6b546c0d9520d85038addb7beb12fChristian Maeder >安全</em>な環境変数の組に整理されます。
d4aed7a2eea6b546c0d9520d85038addb7beb12fChristian Maeder この安全な環境変数の集合は、コンパイル時に <code>suexec.c</code>
d4aed7a2eea6b546c0d9520d85038addb7beb12fChristian Maeder で定義されます。</li>
5b3e0bbb6a776c60dc14113435a44e7b13d2fa01Christian Maeder <li>移植性のために、環境変数の名前はアルファベット、
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder 数字とアンダースコア <transnote>'_'</transnote> だけから成ります。
38824a7dba4f7d82532afec67e0b594a5af5d76bChristian Maeder さらに、最初の文字は数字であってはいけません。
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder この制限に合わない文字は CGI スクリプトと SSI
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder ページに渡されるときにアンダースコアに置換されます。</li>
a1a48072301767054f2a9ff7ccf8974b0d6a6a28Christian Maeder <li><directive module="mod_env">SetEnv</directive> はリクエスト処理の
bb2c1beb7ab66a49627a2a34df80864a3c65cc83Christian Maeder 段階の中でも遅くに実行されます。つまり
bb2c1beb7ab66a49627a2a34df80864a3c65cc83Christian Maeder <directive module="mod_setenvif">SetEnvIf</directive> や
bb2c1beb7ab66a49627a2a34df80864a3c65cc83Christian Maeder <directive module="mod_rewrite">RewriteCond</directive>
bb2c1beb7ab66a49627a2a34df80864a3c65cc83Christian Maeder などからは、変数がそこで設定されていることがわかりません。</li>
7fe976d9f9c4af1aa7636c568d9919859523de0aChristian Maeder </modulelist>
7fe976d9f9c4af1aa7636c568d9919859523de0aChristian Maeder <directivelist>
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder <directive module="mod_authz_host">Allow</directive>
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder <directive module="mod_log_config">CustomLog</directive>
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder <directive module="mod_authz_host">Deny</directive>
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder <directive module="mod_ext_filter">ExtFilterDefine</directive>
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder <directive module="mod_headers">Header</directive>
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder <directive module="mod_log_config">LogFormat</directive>
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder <directive module="mod_rewrite">RewriteCond</directive>
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder <directive module="mod_rewrite">RewriteRule</directive>
0c92a39a4adf3c1cbe173e3b16c65c159a1ce612Christian Maeder </directivelist>
<section id="proxy"><title>force-proxy-request-1.0, proxy-nokeepalive, proxy-sendchunked, proxy-sendcl</title>
httpd.conf に次の行を加えるよう推奨されていましたが、
# The first directive disables keepalive for Netscape 2.x and browsers that
SetEnvIf Referer "^http://www\.example\.com/" local_referal