1<?xml version="1.0" encoding="ISO-8859-1"?>
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="en" xml:lang="en"><head><!--
4        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5              This file is generated from xml source: DO NOT EDIT
6        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7      -->
8<title>Environment Variables in Apache - Apache HTTP Server</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.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/">Modules</a> | <a href="/mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="/glossary.html">Glossary</a> | <a href="/sitemap.html">Sitemap</a></p>
18<p class="apache">Apache HTTP Server Version 2.2</p>
19<img alt="" src="/images/feather.gif" /></div>
20<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="/images/left.gif" /></a></div>
21<div id="path">
22<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="./">Version 2.2</a></div><div id="page-content"><div id="preamble"><h1>Environment Variables in Apache</h1>
23<div class="toplang">
24<p><span>Available Languages: </span><a href="/en/env.html" title="English">&nbsp;en&nbsp;</a> |
25<a href="/ja/env.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
26<a href="/ko/env.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
27<a href="/tr/env.html" hreflang="tr" rel="alternate" title="T�rk�e">&nbsp;tr&nbsp;</a></p>
28</div>
29
30    <p>The Apache HTTP Server provides a mechanism for storing
31    information in named variables that are called <em>environment
32    variables</em>. This information can be used to control various
33    operations such as logging or access control. The variables are
34    also used as a mechanism to communicate with external programs
35    such as CGI scripts. This document discusses different ways to
36    manipulate and use these variables.</p>
37
38    <p>Although these variables are referred to as <em>environment
39    variables</em>, they are not the same as the environment
40    variables controlled by the underlying operating system.
41    Instead, these variables are stored and manipulated in an
42    internal Apache structure. They only become actual operating
43    system environment variables when they are provided to CGI
44    scripts and Server Side Include scripts. If you wish to
45    manipulate the operating system environment under which the
46    server itself runs, you must use the standard environment
47    manipulation mechanisms provided by your operating system
48    shell.</p>
49  </div>
50<div id="quickview"><ul id="toc"><li><img alt="" src="/images/down.gif" /> <a href="#setting">Setting Environment Variables</a></li>
51<li><img alt="" src="/images/down.gif" /> <a href="#using">Using Environment Variables</a></li>
52<li><img alt="" src="/images/down.gif" /> <a href="#special">Special Purpose Environment Variables</a></li>
53<li><img alt="" src="/images/down.gif" /> <a href="#examples">Examples</a></li>
54</ul><ul class="seealso"><li><a href="#comments_section">Comments</a></li></ul></div>
55<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
56<div class="section">
57<h2><a name="setting" id="setting">Setting Environment Variables</a></h2>
58    
59    <table class="related"><tr><th>Related Modules</th><th>Related Directives</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>
60
61    <h3><a name="basic-manipulation" id="basic-manipulation">Basic Environment Manipulation</a></h3>
62        
63
64        <p>The most basic way to set an environment variable in Apache
65        is using the unconditional <code class="directive"><a href="/mod/mod_env.html#setenv">SetEnv</a></code> directive. Variables may also be passed from
66        the environment of the shell which started the server using the
67        <code class="directive"><a href="/mod/mod_env.html#passenv">PassEnv</a></code> directive.</p>
68
69    
70    <h3><a name="conditional" id="conditional">Conditional Per-Request Settings</a></h3>
71        
72
73        <p>For additional flexibility, the directives provided by
74        <code class="module"><a href="/mod/mod_setenvif.html">mod_setenvif</a></code> allow environment variables to be set
75        on a per-request basis, conditional on characteristics of particular
76        requests. For example, a variable could be set only when a
77        specific browser (User-Agent) is making a request, or only when
78        a specific Referer [sic] header is found. Even more flexibility
79        is available through the <code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code>'s <code class="directive"><a href="/mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> which uses the
80        <code>[E=...]</code> option to set environment variables.</p>
81
82    
83    <h3><a name="unique-identifiers" id="unique-identifiers">Unique Identifiers</a></h3>
84        
85
86        <p>Finally, <code class="module"><a href="/mod/mod_unique_id.html">mod_unique_id</a></code> sets the environment
87        variable <code>UNIQUE_ID</code> for each request to a value which is
88        guaranteed to be unique across "all" requests under very
89        specific conditions.</p>
90
91    
92    <h3><a name="standard-cgi" id="standard-cgi">Standard CGI Variables</a></h3>
93        
94
95        <p>In addition to all environment variables set within the
96        Apache configuration and passed from the shell, CGI scripts and
97        SSI pages are provided with a set of environment variables
98        containing meta-information about the request as required by
99        the <a href="http://www.w3.org/CGI/">CGI
100        specification</a>.</p>
101
102    
103    <h3><a name="caveats" id="caveats">Some Caveats</a></h3>
104        
105
106        <ul>
107          <li>It is not possible to override or change the standard CGI
108          variables using the environment manipulation directives.</li>
109
110          <li>When <code class="program"><a href="/programs/suexec.html">suexec</a></code> is used to launch
111          CGI scripts, the environment will be cleaned down to a set of
112          <em>safe</em> variables before CGI scripts are launched. The
113          list of <em>safe</em> variables is defined at compile-time in
114          <code>suexec.c</code>.</li>
115
116          <li>For portability reasons, the names of environment
117          variables may contain only letters, numbers, and the
118          underscore character. In addition, the first character may
119          not be a number. Characters which do not match this
120          restriction will be replaced by an underscore when passed to
121          CGI scripts and SSI pages.</li>
122
123          <li>The <code class="directive"><a href="/mod/mod_env.html#setenv">SetEnv</a></code> directive runs
124          late during request processing meaning that directives such as
125          <code class="directive"><a href="/mod/mod_setenvif.html#setenvif">SetEnvIf</a></code> and <code class="directive"><a href="/mod/mod_rewrite.html#rewritecond">RewriteCond</a></code> will not see the
126          variables set with it.</li>
127        </ul>
128    
129  </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
130<div class="section">
131<h2><a name="using" id="using">Using Environment Variables</a></h2>
132    
133
134    <table class="related"><tr><th>Related Modules</th><th>Related Directives</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>
135
136    <h3><a name="cgi-scripts" id="cgi-scripts">CGI Scripts</a></h3>
137        
138
139        <p>One of the primary uses of environment variables is to
140        communicate information to CGI scripts. As discussed above, the
141        environment passed to CGI scripts includes standard
142        meta-information about the request in addition to any variables
143        set within the Apache configuration. For more details, see the
144        <a href="howto/cgi.html">CGI tutorial</a>.</p>
145
146    
147    <h3><a name="ssi-pages" id="ssi-pages">SSI Pages</a></h3>
148        
149
150        <p>Server-parsed (SSI) documents processed by
151        <code class="module"><a href="/mod/mod_include.html">mod_include</a></code>'s
152        <code>INCLUDES</code> filter can print environment variables
153        using the <code>echo</code> element, and can use environment
154        variables in flow control elements to makes parts of a page
155        conditional on characteristics of a request. Apache also
156        provides SSI pages with the standard CGI environment variables
157        as discussed above. For more details, see the <a href="howto/ssi.html">SSI tutorial</a>.</p>
158
159    
160    <h3><a name="access-control" id="access-control">Access Control</a></h3>
161        
162
163        <p>Access to the server can be controlled based on the value of
164        environment variables using the <code>allow from env=</code>
165        and <code>deny from env=</code> directives. In combination with
166        <code class="directive"><a href="/mod/mod_setenvif.html#setenvif">SetEnvIf</a></code>, this
167        allows for flexible control of access to the server based on
168        characteristics of the client. For example, you can use these
169        directives to deny access to a particular browser (User-Agent).
170        </p>
171
172    
173    <h3><a name="logging" id="logging">Conditional Logging</a></h3>
174        
175
176        <p>Environment variables can be logged in the access log using
177        the <code class="directive"><a href="/mod/mod_log_config.html#logformat">LogFormat</a></code>
178        option <code>%e</code>. In addition, the decision on whether
179        or not to log requests can be made based on the status of
180        environment variables using the conditional form of the
181        <code class="directive"><a href="/mod/mod_log_config.html#customlog">CustomLog</a></code>
182        directive. In combination with <code class="directive"><a href="/mod/mod_setenvif.html#setenvif">SetEnvIf</a></code> this allows for flexible control of which
183        requests are logged. For example, you can choose not to log
184        requests for filenames ending in <code>gif</code>, or you can
185        choose to only log requests from clients which are outside your
186        subnet.</p>
187
188    
189    <h3><a name="response-headers" id="response-headers">Conditional Response Headers</a></h3>
190        
191
192        <p>The <code class="directive"><a href="/mod/mod_headers.html#header">Header</a></code>
193        directive can use the presence or
194        absence of an environment variable to determine whether or not
195        a certain HTTP header will be placed in the response to the
196        client. This allows, for example, a certain response header to
197        be sent only if a corresponding header is received in the
198        request from the client.</p>
199
200    
201
202    <h3><a name="external-filter" id="external-filter">External Filter Activation</a></h3>
203        
204
205        <p>External filters configured by <code class="module"><a href="/mod/mod_ext_filter.html">mod_ext_filter</a></code>
206        using the <code class="directive"><a href="/mod/mod_ext_filter.html#extfilterdefine">ExtFilterDefine</a></code> directive can
207        by activated conditional on an environment variable using the
208        <code>disableenv=</code> and <code>enableenv=</code> options.</p>
209    
210
211    <h3><a name="url-rewriting" id="url-rewriting">URL Rewriting</a></h3>
212        
213
214        <p>The <code>%{ENV:<em>variable</em>}</code> form of
215        <em>TestString</em> in the <code class="directive"><a href="/mod/mod_rewrite.html#rewritecond">RewriteCond</a></code> allows <code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code>'s rewrite
216        engine to make decisions conditional on environment variables. Note
217        that the variables accessible in <code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code> without
218        the <code>ENV:</code> prefix are not actually environment variables.
219        Rather, they are variables special to <code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code>
220        which cannot be accessed from other modules.</p>
221    
222  </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
223<div class="section">
224<h2><a name="special" id="special">Special Purpose Environment Variables</a></h2>
225    
226
227        <p>Interoperability problems have led to the introduction of
228        mechanisms to modify the way Apache behaves when talking to
229        particular clients. To make these mechanisms as flexible as
230        possible, they are invoked by defining environment variables,
231        typically with <code class="directive"><a href="/mod/mod_setenvif.html#browsermatch">BrowserMatch</a></code>, though <code class="directive"><a href="/mod/mod_env.html#setenv">SetEnv</a></code> and  <code class="directive"><a href="/mod/mod_env.html#passenv">PassEnv</a></code> could also be used, for example.</p>
232
233    <h3><a name="downgrade" id="downgrade">downgrade-1.0</a></h3>
234        
235
236        <p>This forces the request to be treated as a HTTP/1.0 request
237        even if it was in a later dialect.</p>
238
239    
240    <h3><a name="force-gzip" id="force-gzip">force-gzip</a></h3>
241        
242          <p>If you have the <code>DEFLATE</code> filter activated, this
243          environment variable will ignore the accept-encoding setting of
244          your browser and will send compressed output unconditionally.</p>
245    
246    <h3><a name="force-no-vary" id="force-no-vary">force-no-vary</a></h3>
247        
248
249        <p>This causes any <code>Vary</code> fields to be removed from
250        the response header before it is sent back to the client. Some
251        clients don't interpret this field correctly; setting this
252        variable can work around this problem. Setting this variable
253        also implies <strong>force-response-1.0</strong>.</p>
254
255    
256    <h3><a name="force-response" id="force-response">force-response-1.0</a></h3>
257        
258
259      <p>This forces an HTTP/1.0 response to clients making an HTTP/1.0
260      request. It was originally
261      implemented as a result of a problem with AOL's proxies. Some
262      HTTP/1.0 clients may not behave correctly when given an HTTP/1.1
263      response, and this can be used to interoperate with them.</p>
264
265    
266
267    <h3><a name="gzip-only-text-html" id="gzip-only-text-html">gzip-only-text/html</a></h3>
268        
269
270        <p>When set to a value of "1", this variable disables the
271        <code>DEFLATE</code> output filter provided by
272        <code class="module"><a href="/mod/mod_deflate.html">mod_deflate</a></code> for content-types other than
273        <code>text/html</code>. If you'd rather
274        use statically compressed files, <code class="module"><a href="/mod/mod_negotiation.html">mod_negotiation</a></code>
275        evaluates the variable as well (not only for gzip, but for all
276        encodings that differ from "identity").</p>
277    
278
279    <h3><a name="no-gzip" id="no-gzip">no-gzip</a></h3>
280
281        <p>When set, the <code>DEFLATE</code> filter of
282        <code class="module"><a href="/mod/mod_deflate.html">mod_deflate</a></code> will be turned off and
283        <code class="module"><a href="/mod/mod_negotiation.html">mod_negotiation</a></code> will refuse to deliver encoded
284        resources.</p>
285
286    
287
288    <h3><a name="no-cache" id="no-cache">no-cache</a></h3>
289        <p><em>Available in versions 2.2.12 and later</em></p>
290
291        <p>When set, <code class="module"><a href="/mod/mod_cache.html">mod_cache</a></code> will not save an otherwise
292        cacheable response.  This environment variable does not influence
293        whether a response already in the cache will be served for the current 
294        request.</p>
295
296    
297
298    <h3><a name="nokeepalive" id="nokeepalive">nokeepalive</a></h3>
299        
300
301        <p>This disables <code class="directive"><a href="/mod/core.html#keepalive">KeepAlive</a></code>
302        when set.</p>
303
304    
305
306    <h3><a name="prefer-language" id="prefer-language">prefer-language</a></h3>
307
308        <p>This influences <code class="module"><a href="/mod/mod_negotiation.html">mod_negotiation</a></code>'s behaviour. If
309        it contains a language tag (such as <code>en</code>, <code>ja</code>
310        or <code>x-klingon</code>), <code class="module"><a href="/mod/mod_negotiation.html">mod_negotiation</a></code> tries
311        to deliver a variant with that language. If there's no such variant,
312        the normal <a href="content-negotiation.html">negotiation</a> process
313        applies.</p>
314
315    
316
317    <h3><a name="redirect-carefully" id="redirect-carefully">redirect-carefully</a></h3>
318        
319
320        <p>This forces the server to be more careful when sending a redirect
321        to the client.  This is typically used when a client has a known
322        problem handling redirects.  This was originally implemented as a
323        result of a problem with Microsoft's WebFolders software which has
324        a problem handling redirects on directory resources via DAV
325        methods.</p>
326
327    
328
329   <h3><a name="suppress-error-charset" id="suppress-error-charset">suppress-error-charset</a></h3>
330       
331
332    <p><em>Available in versions after 2.0.54</em></p>
333
334    <p>When Apache issues a redirect in response to a client request,
335    the response includes some actual text to be displayed in case
336    the client can't (or doesn't) automatically follow the redirection.
337    Apache ordinarily labels this text according to the character set
338    which it uses, which is ISO-8859-1.</p>
339
340    <p> However, if the redirection is to a page that uses a different
341    character set, some broken browser versions will try to use the
342    character set from the redirection text rather than the actual page.
343    This can result in Greek, for instance, being incorrectly rendered.</p>
344
345    <p>Setting this environment variable causes Apache to omit the character
346    set for the redirection text, and these broken browsers will then correctly
347    use that of the destination page.</p>
348
349    <div class="warning">
350      <h3>Security note</h3>
351
352      <p>Sending error pages without a specified character set may
353      allow a cross-site-scripting attack for existing browsers (MSIE)
354      which do not follow the HTTP/1.1 specification and attempt to
355      "guess" the character set from the content.  Such browsers can
356      be easily fooled into using the UTF-7 character set, and UTF-7
357      content from input data (such as the request-URI) will not be
358      escaped by the usual escaping mechanisms designed to prevent
359      cross-site-scripting attacks.</p>
360    </div>
361
362   
363
364   <h3><a name="proxy" id="proxy">force-proxy-request-1.0, proxy-nokeepalive, proxy-sendchunked,
365   proxy-sendcl, proxy-chain-auth, proxy-interim-response, proxy-initial-not-pooled</a></h3>
366
367   <p>These directives alter the protocol behavior of
368   <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code>.  See the <code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code> and <code class="module"><a href="/mod/mod_proxy_http.html">mod_proxy_http</a></code>
369   documentation for more details.</p>
370   
371
372  </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
373<div class="section">
374<h2><a name="examples" id="examples">Examples</a></h2>
375    
376
377    <h3><a name="misbehaving" id="misbehaving">Changing protocol behavior with misbehaving clients</a></h3>
378        
379
380        <p>Earlier versions recommended that the following lines be included in
381        httpd.conf to deal with known client problems.  Since the affected clients
382        are no longer seen in the wild, this configuration is likely no-longer
383        necessary.</p>
384<div class="example"><pre>
385#
386# The following directives modify normal HTTP response behavior.
387# The first directive disables keepalive for Netscape 2.x and browsers that
388# spoof it. There are known problems with these browser implementations.
389# The second directive is for Microsoft Internet Explorer 4.0b2
390# which has a broken HTTP/1.1 implementation and does not properly
391# support keepalive when it is used on 301 or 302 (redirect) responses.
392#
393BrowserMatch "Mozilla/2" nokeepalive
394BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
395
396#
397# The following directive disables HTTP/1.1 responses to browsers which
398# are in violation of the HTTP/1.0 spec by not being able to grok a
399# basic 1.1 response.
400#
401BrowserMatch "RealPlayer 4\.0" force-response-1.0
402BrowserMatch "Java/1\.0" force-response-1.0
403BrowserMatch "JDK/1\.0" force-response-1.0</pre></div>
404
405    
406    <h3><a name="no-img-log" id="no-img-log">Do not log requests for images in the access log</a></h3>
407        
408
409        <p>This example keeps requests for images from appearing in the
410        access log. It can be easily modified to prevent logging of
411        particular directories, or to prevent logging of requests
412        coming from particular hosts.</p>
413
414        <div class="example"><p><code>
415          SetEnvIf Request_URI \.gif image-request<br />
416          SetEnvIf Request_URI \.jpg image-request<br />
417          SetEnvIf Request_URI \.png image-request<br />
418          CustomLog logs/access_log common env=!image-request
419        </code></p></div>
420
421    
422    <h3><a name="image-theft" id="image-theft">Prevent "Image Theft"</a></h3>
423        
424
425        <p>This example shows how to keep people not on your server
426        from using images on your server as inline-images on their
427        pages. This is not a recommended configuration, but it can work
428        in limited circumstances. We assume that all your images are in
429        a directory called /web/images.</p>
430
431        <div class="example"><p><code>
432          SetEnvIf Referer "^http://www\.example\.com/" local_referal
433          # Allow browsers that do not send Referer info
434          SetEnvIf Referer "^$" local_referal
435          &lt;Directory /web/images&gt;
436          <span class="indent">
437            Order Deny,Allow<br />
438            Deny from all<br />
439            Allow from env=local_referal
440          </span>
441          &lt;/Directory&gt;
442        </code></p></div>
443
444        <p>For more information about this technique, see the
445	"<a href="http://www.serverwatch.com/tutorials/article.php/1132731">Keeping Your Images from Adorning Other Sites</a>" tutorial on
446  ServerWatch.</p>
447    
448  </div></div>
449<div class="bottomlang">
450<p><span>Available Languages: </span><a href="/en/env.html" title="English">&nbsp;en&nbsp;</a> |
451<a href="/ja/env.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
452<a href="/ko/env.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
453<a href="/tr/env.html" hreflang="tr" rel="alternate" title="T�rk�e">&nbsp;tr&nbsp;</a></p>
454</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">Comments</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;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>
455<script type="text/javascript"><!--//--><![CDATA[//><!--
456var comments_shortname = 'httpd';
457var comments_identifier = 'http://httpd.apache.org/docs/2.2/env.html';
458(function(w, d) {
459    if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
460        d.write('<div id="comments_thread"><\/div>');
461        var s = d.createElement('script');
462        s.type = 'text/javascript';
463        s.async = true;
464        s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
465        (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
466    }
467    else { 
468        d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
469    }
470})(window, document);
471//--><!]]></script></div><div id="footer">
472<p class="apache">Copyright 2013 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
473<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="/glossary.html">Glossary</a> | <a href="/sitemap.html">Sitemap</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
474if (typeof(prettyPrint) !== 'undefined') {
475    prettyPrint();
476}
477//--><!]]></script>
478</body></html>