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>Apache の環境変数 - 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 id="manual-page"><div id="page-header"> 17<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> 18<p class="apache">Apache HTTP サーバ バージョン 2.4</p> 19<img alt="" src="/images/feather.gif" /></div> 20<div class="up"><a href="./"><img title="<-" alt="<-" src="/images/left.gif" /></a></div> 21<div id="path"> 22<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></div><div id="page-content"><div id="preamble"><h1>Apache の環境変数</h1> 23<div class="toplang"> 24<p><span>翻訳済み言語: </span><a href="/en/env.html" hreflang="en" rel="alternate" title="English"> en </a> | 25<a href="/fr/env.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | 26<a href="/ja/env.html" title="Japanese"> ja </a> | 27<a href="/ko/env.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | 28<a href="/tr/env.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p> 29</div> 30<div class="outofdate">この日本語訳はすでに古くなっている 31 可能性があります。 32 最近更新された内容を見るには英語版をご覧下さい。 33 </div> 34 35 <p>Apache HTTP サーバは<em>環境変数</em>と呼ばれる、名前のついた 36 変数に情報を記憶する仕組みを提供しています。この情報はログ収集や 37 アクセス制御などのいろいろな操作を制御するために使うことができます。 38 これらの変数は CGI スクリプトなどの外部プログラムと通信するためにも 39 使われます。この文書はそれらの変数の操作方法と使用方法をいくつか 40 紹介します。</p> 41 42 <p>これらの変数は<em>環境変数</em>と呼ばれていますが、オペレーティング 43 システムによって制御されている環境変数と同じではありません。 44 実際は、これらの変数は Apache の内部構造の中に記憶され、操作されています。 45 それらは、CGI や SSI スクリプトに渡されたときだけ、実際の 46 オペレーティングシステムの環境変数になります。サーバ自身が 47 実行されているオペレーティングシステムの環境を操作したい場合は、 48 オペレーティングシステムのシェルが提供している標準の環境変数の 49 操作方法を使わなければなりません。</p> 50 </div> 51<div id="quickview"><ul id="toc"><li><img alt="" src="/images/down.gif" /> <a href="#setting">環境変数の設定</a></li> 52<li><img alt="" src="/images/down.gif" /> <a href="#using">環境変数の使用</a></li> 53<li><img alt="" src="/images/down.gif" /> <a href="#special">特別な目的の環境変数</a></li> 54<li><img alt="" src="/images/down.gif" /> <a href="#examples">例</a></li> 55</ul><ul class="seealso"><li><a href="#comments_section">コメント</a></li></ul></div> 56<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 57<div class="section"> 58<h2><a name="setting" id="setting">環境変数の設定</a></h2> 59 60 <table class="related"><tr><th>関連モジュール</th><th>関連ディレクティブ</th></tr><tr><td><ul><li><code class="module"><a href="/mod/mod_env.html">mod_env</a></code></li><li><code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code></li><li><code class="module"><a href="/mod/mod_setenvif.html">mod_setenvif</a></code></li><li><code class="module"><a href="/mod/mod_unique_id.html">mod_unique_id</a></code></li></ul></td><td><ul><li><code class="directive"><a href="/mod/mod_setenvif.html#browsermatch">BrowserMatch</a></code></li><li><code class="directive"><a href="/mod/mod_setenvif.html#browsermatchnocase">BrowserMatchNoCase</a></code></li><li><code class="directive"><a href="/mod/mod_env.html#passenv">PassEnv</a></code></li><li><code class="directive"><a href="/mod/mod_rewrite.html#rewriterule">RewriteRule</a></code></li><li><code class="directive"><a href="/mod/mod_env.html#setenv">SetEnv</a></code></li><li><code class="directive"><a href="/mod/mod_setenvif.html#setenvif">SetEnvIf</a></code></li><li><code class="directive"><a href="/mod/mod_setenvif.html#setenvifnocase">SetEnvIfNoCase</a></code></li><li><code class="directive"><a href="/mod/mod_env.html#unsetenv">UnsetEnv</a></code></li></ul></td></tr></table> 61 62 <h3><a name="basic-manipulation" id="basic-manipulation">基本的な環境の操作</a></h3> 63 64 65 <p>Apache において環境変数を設定する一番基本的な方法は、 66 無条件に環境変数を設定する <code class="directive"><a href="/mod/mod_env.html#setenv">SetEnv</a></code> ディレクティブを使用することです。 67 <code class="directive"><a href="/mod/mod_env.html#passenv">PassEnv</a></code> 68 ディレクティブにより、Apache が起動されたシェルの 69 環境変数を渡すこともできます。</p> 70 71 72 <h3><a name="conditional" id="conditional">リクエスト毎に条件に基づいて設定する</a></h3> 73 74 75 <p>より柔軟性を高めるために、mod_setenvif 76 で提供されているディレクティブを使用することで、リクエストの 77 特性に基づいて環境変数を設定することができます。例えば、特定のブラウザ 78 (User-Agent) のリクエストや特定の Referer [意図的な綴りです] 79 <span class="transnote">(<em>訳注:</em> 正しい綴りは referrer ですが、HTTP の仕様では Referer 80 となっています)</span>ヘッダが見つかったときのみ変数を設定することができます。 81 mod_rewrite の <code class="directive"><a href="/mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> 82 ディレクティブにおいて環境変数を設定する <code>[E=...]</code> 83 オプションを使用することで、 84 より柔軟な設定を行なうことができます。</p> 85 86 87 <h3><a name="unique-identifiers" id="unique-identifiers">一意な識別子</a></h3> 88 89 90 <p>mod_unique_id は、非常に限られた条件の下で 91 「すべて」のリクエストについて、一意であることが保証されている値を環境変数 92 <code>UNIQUE_ID</code> に設定します。</p> 93 94 95 <h3><a name="standard-cgi" id="standard-cgi">標準 CGI 変数</a></h3> 96 97 98 <p>Apache の設定ファイルで設定された環境変数とシェルから渡される 99 環境変数に加えて、CGI スクリプトと SSI ページには <a href="http://cgi-spec.golux.com">CGI の仕様</a>で要求されている、 100 リクエストのメタ情報を持った環境変数の組が提供されます。</p> 101 102 103 <h3><a name="caveats" id="caveats">いくつかの注意</a></h3> 104 105 106 <ul> 107 <li>環境を操作するディレクティブを使って標準 CGI 108 変数を上書きしたり変更したりすることはできません。</li> 109 110 <li>CGI スクリプトを起動するために <code class="program"><a href="/programs/suexec.html">suexec</a></code> 111 が使用されている場合、CGI スクリプトが起動するために、環境変数は<em>安全</em>な環境変数の組に整理されます。 112 この安全な環境変数の集合は、コンパイル時に <code>suexec.c</code> 113 で定義されます。</li> 114 115 <li>移植性のために、環境変数の名前はアルファベット、 116 数字とアンダースコア <span class="transnote">(<em>訳注:</em> '_')</span> だけから成ります。 117 さらに、最初の文字は数字であってはいけません。 118 この制限に合わない文字は CGI スクリプトと SSI 119 ページに渡されるときにアンダースコアに置換されます。</li> 120 121 <li><code class="directive"><a href="/mod/mod_env.html#setenv">SetEnv</a></code> はリクエスト処理の 122 段階の中でも遅くに実行されます。つまり 123 <code class="directive"><a href="/mod/mod_setenvif.html#setenvif">SetEnvIf</a></code> や 124 <code class="directive"><a href="/mod/mod_rewrite.html#rewritecond">RewriteCond</a></code> 125 などからは、変数がそこで設定されていることがわかりません。</li> 126 </ul> 127 128 </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 129<div class="section"> 130<h2><a name="using" id="using">環境変数の使用</a></h2> 131 132 133 <table class="related"><tr><th>関連モジュール</th><th>関連ディレクティブ</th></tr><tr><td><ul><li><code class="module"><a href="/mod/mod_authz_host.html">mod_authz_host</a></code></li><li><code class="module"><a href="/mod/mod_cgi.html">mod_cgi</a></code></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_headers.html">mod_headers</a></code></li><li><code class="module"><a href="/mod/mod_include.html">mod_include</a></code></li><li><code class="module"><a href="/mod/mod_log_config.html">mod_log_config</a></code></li><li><code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code></li></ul></td><td><ul><li><code class="directive"><a href="/mod/mod_authz_host.html#allow">Allow</a></code></li><li><code class="directive"><a href="/mod/mod_log_config.html#customlog">CustomLog</a></code></li><li><code class="directive"><a href="/mod/mod_authz_host.html#deny">Deny</a></code></li><li><code class="directive"><a href="/mod/mod_ext_filter.html#extfilterdefine">ExtFilterDefine</a></code></li><li><code class="directive"><a href="/mod/mod_headers.html#header">Header</a></code></li><li><code class="directive"><a href="/mod/mod_log_config.html#logformat">LogFormat</a></code></li><li><code class="directive"><a href="/mod/mod_rewrite.html#rewritecond">RewriteCond</a></code></li><li><code class="directive"><a href="/mod/mod_rewrite.html#rewriterule">RewriteRule</a></code></li></ul></td></tr></table> 134 135 <h3><a name="cgi-scripts" id="cgi-scripts">CGI スクリプト</a></h3> 136 137 138 <p>環境変数の主な利用法の一つは、CGI スクリプトに情報を伝えることです。 139 上で説明されているように、CGI スクリプトに渡される環境変数は Apache 140 の設定により設定される変数に加えて、リクエストの標準のメタ情報を含んでいます。 141 詳細は <a href="howto/cgi.html">CGI チュートリアル</a> 142 を参照してください。</p> 143 144 145 <h3><a name="ssi-pages" id="ssi-pages">SSI ページ</a></h3> 146 147 148 <p>mod_include の <code>INCLUDES</code> フィルタで処理される 149 server-parsed (SSI) ドキュメントでは、<code>echo</code> 150 要素を使用すると環境変数が出力されます。 151 また、ページのある部分がリクエストの性質に応じて変更されるように、 152 環境変数をフロー制御要素で使うことができます。詳細は 153 <a href="howto/ssi.html">SSI チュートリアル</a> を参照してください。</p> 154 155 156 <h3><a name="access-control" id="access-control">アクセス制御</a></h3> 157 158 159 <p><code>allow from env=</code> ディレクティブと <code>deny from env=</code> 160 ディレクティブを使用して、サーバへのアクセスを環境変数の値で制御することができます。 161 <code class="directive"><a href="/mod/mod_setenvif.html#setenvif">SetEnvIf</a></code> 162 ディレクティブと組み合わせることで、クライアントの特性に基づいて 163 サーバへのアクセス制御を柔軟に行なうことができるようになります。 164 たとえば、これらのディレクティブを使用して、特定のブラウザ (User-Agent) 165 からのアクセスを拒否することができます。</p> 166 167 168 <h3><a name="logging" id="logging">条件付きログ記録</a></h3> 169 170 171 <p><code class="directive"><a href="/mod/mod_log_config.html#logformat">LogFormat</a></code> 172 ディレクティブのオプション <code>%e</code> 173 を使用することで、環境変数をアクセスログに記録することができます。さらに、 174 <code class="directive"><a href="/mod/mod_log_config.html#customlog">CustomLog</a></code> 175 ディレクティブの条件分岐式を使用することで、 176 環境変数の値によってリクエストをログに記録するかどうかを決めることができます。 177 <code class="directive"><a href="/mod/mod_setenvif.html#setenvif">SetEnvIf</a></code> 178 ディレクティブと組み合わせることで、 179 どのリクエストをログに記録するかを柔軟に制御することが可能になります。たとえば、 180 <code>gif</code> で終わるファイル名へのリクエストはログに記録しない、 181 違うサブネットのクライアントからのリクエストだけをログに記録する、 182 という選択が可能です。</p> 183 184 185 <h3><a name="response-headers" id="response-headers">条件付き応答ヘッダ</a></h3> 186 187 188 <p><code class="directive"><a href="/mod/mod_headers.html#header">Header</a></code> 189 ディレクティブは環境変数の存在や不在によってクライアントへの応答に特定の 190 HTTP ヘッダを付けるかどうかを決めることができます。 191 これにより、たとえば、クライアントからのリクエスト 192 にあるヘッダがある場合にのみ特定の応答ヘッダを送る、というようなことが 193 できます。</p> 194 195 196 197 <h3><a name="external-filter" id="external-filter">外部フィルタの適用</a></h3> 198 199 200 <p><code class="directive"><a href="/mod/mod_ext_filter.html#extfilterdefine">ExtFilterDefine</a></code> 201 ディレクティブを使用して 202 <code class="module"><a href="/mod/mod_ext_filter.html">mod_ext_filter</a></code> で設定される外部フィルタは、 203 <code>disableenv=</code> と <code>enableenv=</code> 204 オプションを使って、環境変数による条件付き適用ができます。</p> 205 206 207 <h3><a name="url-rewriting" id="url-rewriting">URL の書き換え</a></h3> 208 209 210 <p><code class="directive"><a href="/mod/mod_rewrite.html#rewritecond">RewriteCond</a></code> 211 ディレクティブで<em>評価文字列</em>として 212 <code>%{ENV:...}</code> 式を指定することで、mod_rewrite 213 の書き換えエンジンが環境変数に基いて条件分岐を行なうことができます。 214 mod_rewrite が使用可能な変数で <code>ENV:</code> が前についていない変数は、 215 実際は環境変数ではないということに注意してください。 216 それらは他のモジュールからは使用できない mod_rewrite 用の特別な変数です。 217 </p> 218 219 </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 220<div class="section"> 221<h2><a name="special" id="special">特別な目的の環境変数</a></h2> 222 223 224 <p>互換性の問題を解決するために、特定のクライアントと通信しているときは 225 Apache の動作を変更できる機構が導入されました。できるだけ柔軟にするために、 226 これらの機構は環境変数を定義することで呼び出されます。普通は、 227 <code class="directive"><a href="/mod/mod_setenvif.html#browsermatch">BrowserMatch</a></code> 228 ディレクティブを使いますが、たとえば <code class="directive"><a href="/mod/mod_env.html#setenv">SetEnv</a></code> ディレクティブや <code class="directive"><a href="/mod/mod_env.html#passenv">PassEnv</a></code> ディレクティブも使用することができます。</p> 229 230 <h3><a name="downgrade" id="downgrade">downgrade-1.0</a></h3> 231 232 233 <p>これを指定することで、リクエストが HTTP/1.0 234 より新しいプロトコルの場合でも、HTTP/1.0 として扱われます。</p> 235 236 237 <h3><a name="force-gzip" id="force-gzip">force-gzip</a></h3> 238 239 <p><code>DEFLATE</code> フィルタが使用するように設定されているときに、 240 この環境変数はブラウザの accept-encoding の設定を無視して常に 241 圧縮された出力を送るようにします。</p> 242 243 <h3><a name="force-no-vary" id="force-no-vary">force-no-vary</a></h3> 244 245 246 <p>応答ヘッダがクライアントに送られる前に <code>Vary</code> 247 フィールドを取り除きます。 248 クライアントの中にはこのフィールドを正しく解釈しないものがあります。 249 この変数を設定することでその問題を回避することができます。 250 この変数を設定すると、<strong>force-response-1.0</strong> 251 が設定されたことになります。</p> 252 253 254 <h3><a name="force-response" id="force-response">force-response-1.0</a></h3> 255 256 257 <p>これが設定されていると、HTTP/1.0 リクエストを発行するクライアントに対しては 258 常に HTTP/1.0 で応答するようになります。この機能は、 259 元々は AOL のプロキシの問題のために実装されました。HTTP/1.0 クライアントの中には、 260 HTTP/1.1 の応答を返されると正しく動作しないものがあるかもしれません。 261 この機能を使用することで、そのようなクライアントとの間の互換性問題を解決できます。</p> 262 263 264 <h3><a name="gzip-only-text-html" id="gzip-only-text-html">gzip-only-text/html</a></h3> 265 266 267 <p>これが 1 に設定されると、この変数は <code>text/html</code> 268 以外のコンテントタイプに対する、<code class="module"><a href="/mod/mod_deflate.html">mod_deflate</a></code> 269 提供の <code>DEFLATE</code> 出力フィルタを無効にします。 270 また、静的に、既に圧縮されたファイルを使用したい場合、 271 (gzip だけでなく、"identity" と異なる全てのエンコードに対して) 272 <code class="module"><a href="/mod/mod_negotiation.html">mod_negotiation</a></code> も変数を評価します。</p> 273 274 275 <h3><a name="no-gzip" id="no-gzip">no-gzip</a></h3> 276 <p>セットされると、<code class="module"><a href="/mod/mod_deflate.html">mod_deflate</a></code> の 277 <code>DEFLATE</code> フィルタがオフになります。 278 そして <code class="module"><a href="/mod/mod_negotiation.html">mod_negotiation</a></code> 279 はエンコードされたリソースを送らないようにします。</p> 280 281 282 <h3><a name="nokeepalive" id="nokeepalive">nokeepalive</a></h3> 283 284 285 <p>これが設定されている場合は、<code class="directive"><a href="/mod/core.html#keepalive">KeepAlive</a></code> を使用しないようにします。</p> 286 287 <h4><a name="prefer-language" id="prefer-language">prefer-language</a></h4> 288 289 <p><code class="module"><a href="/mod/mod_negotiation.html">mod_negotiation</a></code> の挙動に影響を与えます。 290 (<code>en</code>, <code>ja</code>, <code>x-klingon</code>といった) 291 言語タグが格納されていれば、その言語の variant を送信しようとします。 292 そのような variant がない場合は、 293 通常の<a href="content-negotiation.html">ネゴシエーション</a>処理が 294 適用されます。</p> 295 296 297 298 299 <h3><a name="redirect-carefully" id="redirect-carefully">redirect-carefully</a></h3> 300 301 302 <p>これはクライアントへのリダイレクトの送信をサーバがより注意深く 303 行なうようにします。 304 これは通常、リダイレクトに際してクライアントに 305 問題があることが分かっている場合に使われます。この機能は元々は 306 マイクロソフトのウェブフォルダのソフトが DAV 307 メソッドによるディレクトリのリソースへのリダイレクトの扱いに 308 問題がり、それを回避するために実装されました。</p> 309 310 311 312 <h3><a name="suppress-error-charset" id="suppress-error-charset">suppress-error-charset</a></h3> 313 314 315 <p><em>Apache 2.2 以降で利用可能</em></p> 316 317 <p>クライアントのリクエストに対する応答としてリダイレクトを送信する際、 318 レスポンスにはリダイレクトが自動的に行なえない (行なわれない) 319 場合に表示するテキストが含まれます。 320 通常、このテキストに合致したキャラクタセット、ISO-8859-1 321 でラベル付けをします。</p> 322 <p>しかし、リダイレクト先が別の文字セットを使っている場合、 323 ある問題のあるブラウザのバージョンでは、 324 リダイレクト先の実際の文字セットの代わりに、 325 リダイレクト元の文字セットを使ってしまうことがあります。 326 その結果、例えば変な描画が行なわれたりして、読めなくなったりします。</p> 327 <p>この環境変数を設定することで、リダイレクションテキストに対する 328 キャラクタセットの指定を除去しますので、それら問題のあるブラウザでも 329 リダイレクト先の文字セットを正しく使うようにできます。</p> 330 331 <div class="warning"> 332 <h3>セキュリティ</h3> 333 334 <p>文字セットを指定せずにエラーページを送信すると、 335 クロスサイトスクリプティング <span class="transnote">(<em>訳注:</em> XSS)</span> 336 攻撃の危険性がでてきます。 337 HTTP/1.1 仕様に準拠していなくて、コンテンツの中身から文字セットを 338 "推測" しようとするブラウザ (MSIE) が実際にあるからです。 339 そのようなブラウザは UTF-7 文字セットを使って簡単に騙すことができます。 340 クロスサイトスクリプティング攻撃を防ぐために実装されている 341 通常のエスケープ機構が、入力データ中にある UTF-7 で 342 エンコードされたコンテンツ (リクエスト URI など) には 343 うまく動作しないからです。</p> 344 </div> 345 346 347 348 <h3><a name="proxy" id="proxy">force-proxy-request-1.0, proxy-nokeepalive, proxy-sendchunked, proxy-sendcl</a></h3> 349 350 <p>これらの指示子は <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code> の挙動を変更します。 351 詳細は <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code> のドキュメントをご参照ください。</p> 352 353 354 </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 355<div class="section"> 356<h2><a name="examples" id="examples">例</a></h2> 357 358 359 <h3><a name="misbehaving" id="misbehaving">おかしな挙動をするクライアントに対してプロトコルの動作を変更する</a></h3> 360 361 362 <p>クライアントに関する既知の問題に対処するために、以下の行を 363 httpd.conf に入れることを推奨しています。</p> 364 <p>古いバージョンの Apache では、クライアントの問題に対応するために 365 httpd.conf に次の行を加えるよう推奨されていましたが、 366 今となっては、問題としていたクライアントは実際には見かけることは 367 なくなってきたので、この設定はもはや必要ないかもしれません。</p> 368<div class="example"><pre># 369# The following directives modify normal HTTP response behavior. 370# The first directive disables keepalive for Netscape 2.x and browsers that 371# spoof it. There are known problems with these browser implementations. 372# The second directive is for Microsoft Internet Explorer 4.0b2 373# which has a broken HTTP/1.1 implementation and does not properly 374# support keepalive when it is used on 301 or 302 (redirect) responses. 375# 376BrowserMatch "Mozilla/2" nokeepalive 377BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 378 379# 380# The following directive disables HTTP/1.1 responses to browsers which 381# are in violation of the HTTP/1.0 spec by not being able to grok a 382# basic 1.1 response. 383# 384BrowserMatch "RealPlayer 4\.0" force-response-1.0 385BrowserMatch "Java/1\.0" force-response-1.0 386BrowserMatch "JDK/1\.0" force-response-1.0</pre></div> 387 388 389 <h3><a name="no-img-log" id="no-img-log">画像へのリクエストをアクセスログに記録しない</a></h3> 390 391 392 <p>この例では、画像へのリクエストがアクセスログに現れないようにします。 393 これを変更することで、特定のディレクトリのログ収集をやめたり、 394 特定のホストからのリクエストのログ収集をやめたりすることが簡単にできます。 395 </p> 396 <div class="example"><pre>SetEnvIf Request_URI \.gif image-request 397SetEnvIf Request_URI \.jpg image-request 398SetEnvIf Request_URI \.png image-request 399CustomLog logs/access_log common env=!image-request</pre></div> 400 401 402 <h3><a name="image-theft" id="image-theft">「画像の盗用」を防ぐ</a></h3> 403 404 405 <p>この例は、別のサーバにいる人が、あなたのサーバにある画像を 406 inline 画像として使用することを防ぎます。 407 これは推奨されている設定ではありませんが、ある限定された状況では有効です。 408 ここでは、すべての画像は <code>/web/images</code> 409 というディレクトリにあると仮定します。</p> 410 <div class="example"><pre>SetEnvIf Referer "^http://www\.example\.com/" local_referal 411# Allow browsers that do not send Referer info 412SetEnvIf Referer "^$" local_referal 413<Directory /web/images> 414 Order Deny,Allow 415 Deny from all 416 Allow from env=local_referal 417</Directory></pre></div> 418 419 <p>この手法に関する詳しい情報は ServerWatch にあるチュートリアル 420 「<a href="http://www.serverwatch.com/tutorials/article.php/1132731">Keeping Your Images from Adorning Other Sites</a> 421 」を参照してください。</p> 422 423 </div></div> 424<div class="bottomlang"> 425<p><span>翻訳済み言語: </span><a href="/en/env.html" hreflang="en" rel="alternate" title="English"> en </a> | 426<a href="/fr/env.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | 427<a href="/ja/env.html" title="Japanese"> ja </a> | 428<a href="/ko/env.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | 429<a href="/tr/env.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p> 430</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> 431<script type="text/javascript"><!--//--><![CDATA[//><!-- 432var comments_shortname = 'httpd'; 433var comments_identifier = 'http://httpd.apache.org/docs/2.4/env.html'; 434(function(w, d) { 435 if (w.location.hostname.toLowerCase() == "httpd.apache.org") { 436 d.write('<div id="comments_thread"><\/div>'); 437 var s = d.createElement('script'); 438 s.type = 'text/javascript'; 439 s.async = true; 440 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier; 441 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s); 442 } 443 else { 444 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>'); 445 } 446})(window, document); 447//--><!]]></script></div><div id="footer"> 448<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> 449<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[//><!-- 450if (typeof(prettyPrint) !== 'undefined') { 451 prettyPrint(); 452} 453//--><!]]></script> 454</body></html>