]> granicus.if.org Git - apache/commitdiff
Update the environment variable docs with a couple new
authorJoshua Slive <slive@apache.org>
Thu, 22 Aug 2002 02:53:02 +0000 (02:53 +0000)
committerJoshua Slive <slive@apache.org>
Thu, 22 Aug 2002 02:53:02 +0000 (02:53 +0000)
special-purpose variables and a reference to the mod_ext_filter
use of env variables.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96481 13f79535-47bb-0310-9956-ffa450edef68

docs/manual/env.html.en
docs/manual/env.xml

index 34caa7aaaa1e73fa3ec0056618074c274eae37e1..1b231c0f3b8daa64b2a924567d45db200a3d1321 100644 (file)
@@ -2,7 +2,7 @@
         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
               This file is generated from xml source: DO NOT EDIT
         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-      --><title>Environment Variables in Apache - Apache HTTP Server</title><link href="./style/manual.css" type="text/css" rel="stylesheet"></head><body><blockquote><div align="center"><img src="./images/sub.gif" alt="[APACHE DOCUMENTATION]"><h3>Apache HTTP Server Version 2.0</h3></div><h1 align="center">Environment Variables in Apache</h1>
+      --><title>Environment Variables in Apache - Apache HTTP Server</title><link href="../style/manual.css" type="text/css" rel="stylesheet"></head><body><blockquote><div align="center"><img src="../images/sub.gif" alt="[APACHE DOCUMENTATION]"><h3>Apache HTTP Server Version 2.0</h3></div><h1 align="center">Environment Variables in Apache</h1>
     <p>The Apache HTTP Server provides a mechanism for storing
     information in named variables that are called <em>environment
     variables</em>. This information can be used to control various
     server itself runs, you must use the standard environment
     manipulation mechanisms provided by your operating system
     shell.</p>
-  <ul><li><a href="#setting">Setting Environment Variables</a><ul><li><a href="#basic-manipulation">Basic Environment Manipulation</a></li><li><a href="#conditional">Conditional Per-Request Settings</a></li><li><a href="#unique-identifiers">Unique Identifiers</a></li><li><a href="#standard-cgi">Standard CGI Variables</a></li><li><a href="#caveats">Some Caveats</a></li></ul></li><li><a href="#using">Using Environment Variables</a><ul><li><a href="#cgi-scripts">CGI Scripts</a></li><li><a href="#ssi-pages">SSI Pages</a></li><li><a href="#access-control">Access Control</a></li><li><a href="#logging">Conditional Logging</a></li><li><a href="#response-headers">Conditional Response Headers</a></li><li><a href="#url-rewriting">URL Rewriting</a></li></ul></li><li><a href="#special">Special Purpose Environment Variables</a><ul><li><a href="#downgrade">downgrade-1.0</a></li><li><a href="#force-no-vary">force-no-vary</a></li><li><a href="#force-response">force-response-1.0</a></li><li><a href="#nokeepalive">nokeepalive</a></li><li><a href="#redirect-carefully">redirect-carefully</a></li></ul></li><li><a href="#examples">Examples</a><ul><li><a href="#misbehaving">Changing protocol behavior with misbehaving clients</a></li><li><a href="#no-img-log">Do not log requests for images in the access log</a></li><li><a href="#image-theft">Prevent "Image Theft"</a></li></ul></li></ul><hr><h2><a name="setting">Setting Environment Variables</a></h2>
+  <ul><li><a href="#setting">Setting Environment Variables</a><ul><li><a href="#basic-manipulation">Basic Environment Manipulation</a></li><li><a href="#conditional">Conditional Per-Request Settings</a></li><li><a href="#unique-identifiers">Unique Identifiers</a></li><li><a href="#standard-cgi">Standard CGI Variables</a></li><li><a href="#caveats">Some Caveats</a></li></ul></li><li><a href="#using">Using Environment Variables</a><ul><li><a href="#cgi-scripts">CGI Scripts</a></li><li><a href="#ssi-pages">SSI Pages</a></li><li><a href="#access-control">Access Control</a></li><li><a href="#logging">Conditional Logging</a></li><li><a href="#response-headers">Conditional Response Headers</a></li><li><a href="#external-filter">External Filter Activation</a></li><li><a href="#url-rewriting">URL Rewriting</a></li></ul></li><li><a href="#special">Special Purpose Environment Variables</a><ul><li><a href="#downgrade">downgrade-1.0</a></li><li><a href="#force-no-vary">force-no-vary</a></li><li><a href="#force-response">force-response-1.0</a></li><li><a href="#gzip-only-text/html">gzip-only-text/html</a></li><li><a href="#nokeepalive">nokeepalive</a></li><li><a href="#redirect-carefully">redirect-carefully</a></li><li><a href="#suppress-error-charset">suppress-error-charset</a></li></ul></li><li><a href="#examples">Examples</a><ul><li><a href="#misbehaving">Changing protocol behavior with misbehaving clients</a></li><li><a href="#no-img-log">Do not log requests for images in the access log</a></li><li><a href="#image-theft">Prevent "Image Theft"</a></li></ul></li></ul><hr><h2><a name="setting">Setting Environment Variables</a></h2>
     
-    <table border="1"><tr><td valign="top"><strong>Related Modules</strong><br><br><code><a href="./mod/mod_env.html">mod_env</a></code><br><code><a href="./mod/mod_rewrite.html">mod_rewrite</a></code><br><code><a href="./mod/mod_setenvif.html">mod_setenvif</a></code><br><code><a href="./mod/mod_unique_id.html">mod_unique_id</a></code><br></td><td valign="top"><strong>Related Directives</strong><br><br><a href="./mod/mod_setenvif.html#browsermatch" class="directive"><code class="directive">BrowserMatch</code></a><br><a href="./mod/mod_setenvif.html#browsermatchnocase" class="directive"><code class="directive">BrowserMatchNoCase</code></a><br><a href="./mod/mod_env.html#passenv" class="directive"><code class="directive">PassEnv</code></a><br><a href="./mod/mod_rewrite.html#rewriterule" class="directive"><code class="directive">RewriteRule</code></a><br><a href="./mod/mod_env.html#setenv" class="directive"><code class="directive">SetEnv</code></a><br><a href="./mod/mod_setenvif.html#setenvif" class="directive"><code class="directive">SetEnvIf</code></a><br><a href="./mod/mod_setenvif.html#setenvifnocase" class="directive"><code class="directive">SetEnvIfNoCase</code></a><br><a href="./mod/mod_env.html#unsetenv" class="directive"><code class="directive">UnsetEnv</code></a><br></td></tr></table>
+    <table border="1"><tr><td valign="top"><strong>Related Modules</strong><br><br><code><a href="../mod/mod_env.html">mod_env</a></code><br><code><a href="../mod/mod_rewrite.html">mod_rewrite</a></code><br><code><a href="../mod/mod_setenvif.html">mod_setenvif</a></code><br><code><a href="../mod/mod_unique_id.html">mod_unique_id</a></code><br></td><td valign="top"><strong>Related Directives</strong><br><br><a href="../mod/mod_setenvif.html#browsermatch" class="directive"><code class="directive">BrowserMatch</code></a><br><a href="../mod/mod_setenvif.html#browsermatchnocase" class="directive"><code class="directive">BrowserMatchNoCase</code></a><br><a href="../mod/mod_env.html#passenv" class="directive"><code class="directive">PassEnv</code></a><br><a href="../mod/mod_rewrite.html#rewriterule" class="directive"><code class="directive">RewriteRule</code></a><br><a href="../mod/mod_env.html#setenv" class="directive"><code class="directive">SetEnv</code></a><br><a href="../mod/mod_setenvif.html#setenvif" class="directive"><code class="directive">SetEnvIf</code></a><br><a href="../mod/mod_setenvif.html#setenvifnocase" class="directive"><code class="directive">SetEnvIfNoCase</code></a><br><a href="../mod/mod_env.html#unsetenv" class="directive"><code class="directive">UnsetEnv</code></a><br></td></tr></table>
     
     <h3><a name="basic-manipulation">Basic Environment Manipulation</a></h3>
         
     
         <p>The most basic way to set an environment variable in Apache
-        is using the unconditional <a href="./mod/mod_env.html#setenv" class="directive"><code class="directive">SetEnv</code></a> directive. Variables may also be passed from
+        is using the unconditional <a href="../mod/mod_env.html#setenv" class="directive"><code class="directive">SetEnv</code></a> directive. Variables may also be passed from
         the environment of the shell which started the server using the
-        <a href="./mod/mod_env.html#passenv" class="directive"><code class="directive">PassEnv</code></a> directive.</p>
+        <a href="../mod/mod_env.html#passenv" class="directive"><code class="directive">PassEnv</code></a> directive.</p>
     
     
     <h3><a name="conditional">Conditional Per-Request Settings</a></h3>
@@ -44,7 +44,7 @@
         requests. For example, a variable could be set only when a
         specific browser (User-Agent) is making a request, or only when
         a specific Referer [sic] header is found. Even more flexibility
-        is available through the mod_rewrite's <a href="./mod/mod_rewrite.html#rewriterule" class="directive"><code class="directive">RewriteRule</code></a> which uses the 
+        is available through the mod_rewrite's <a href="../mod/mod_rewrite.html#rewriterule" class="directive"><code class="directive">RewriteRule</code></a> which uses the 
         <code>[E=...]</code> option to set environment variables.</p>
     
     
@@ -92,7 +92,7 @@
   <h2><a name="using">Using Environment Variables</a></h2>
     
     
-    <table border="1"><tr><td valign="top"><strong>Related Modules</strong><br><br><code><a href="./mod/mod_access.html">mod_access</a></code><br><code><a href="./mod/mod_cgi.html">mod_cgi</a></code><br><code><a href="./mod/mod_headers.html">mod_headers</a></code><br><code><a href="./mod/mod_include.html">mod_include</a></code><br><code><a href="./mod/mod_log_config.html">mod_log_config</a></code><br><code><a href="./mod/mod_rewrite.html">mod_rewrite</a></code><br></td><td valign="top"><strong>Related Directives</strong><br><br><a href="./mod/mod_access.html#allow" class="directive"><code class="directive">Allow</code></a><br><a href="./mod/mod_log_config.html#customlog" class="directive"><code class="directive">CustomLog</code></a><br><a href="./mod/mod_access.html#deny" class="directive"><code class="directive">Deny</code></a><br><a href="./mod/mod_headers.html#header" class="directive"><code class="directive">Header</code></a><br><a href="./mod/mod_log_config.html#logformat" class="directive"><code class="directive">LogFormat</code></a><br><a href="./mod/mod_rewrite.html#rewritecond" class="directive"><code class="directive">RewriteCond</code></a><br><a href="./mod/mod_rewrite.html#rewriterule" class="directive"><code class="directive">RewriteRule</code></a><br></td></tr></table>
+    <table border="1"><tr><td valign="top"><strong>Related Modules</strong><br><br><code><a href="../mod/mod_access.html">mod_access</a></code><br><code><a href="../mod/mod_cgi.html">mod_cgi</a></code><br><code><a href="../mod/mod_ext_filter.html">mod_ext_filter</a></code><br><code><a href="../mod/mod_headers.html">mod_headers</a></code><br><code><a href="../mod/mod_include.html">mod_include</a></code><br><code><a href="../mod/mod_log_config.html">mod_log_config</a></code><br><code><a href="../mod/mod_rewrite.html">mod_rewrite</a></code><br></td><td valign="top"><strong>Related Directives</strong><br><br><a href="../mod/mod_access.html#allow" class="directive"><code class="directive">Allow</code></a><br><a href="../mod/mod_log_config.html#customlog" class="directive"><code class="directive">CustomLog</code></a><br><a href="../mod/mod_access.html#deny" class="directive"><code class="directive">Deny</code></a><br><a href="../mod/mod_ext_filter.html#extfilterdefine" class="directive"><code class="directive">ExtFilterDefine</code></a><br><a href="../mod/mod_headers.html#header" class="directive"><code class="directive">Header</code></a><br><a href="../mod/mod_log_config.html#logformat" class="directive"><code class="directive">LogFormat</code></a><br><a href="../mod/mod_rewrite.html#rewritecond" class="directive"><code class="directive">RewriteCond</code></a><br><a href="../mod/mod_rewrite.html#rewriterule" class="directive"><code class="directive">RewriteRule</code></a><br></td></tr></table>
 
     <h3><a name="cgi-scripts">CGI Scripts</a></h3>
         
         <p>Access to the server can be controlled based on the value of
         environment variables using the <code>allow from env=</code>
         and <code>deny from env=</code> directives. In combination with
-        <a href="./mod/mod_setenvif.html#setenvif" class="directive"><code class="directive">SetEnvIf</code></a>, this 
+        <a href="../mod/mod_setenvif.html#setenvif" class="directive"><code class="directive">SetEnvIf</code></a>, this 
         allows for flexible control of access to the server based on 
         characteristics of the client. For example, you can use these 
         directives to deny access to a particular browser (User-Agent).
         
     
         <p>Environment variables can be logged in the access log using
-        the <a href="./mod/mod_log_config.html#logformat" class="directive"><code class="directive">LogFormat</code></a>
+        the <a href="../mod/mod_log_config.html#logformat" class="directive"><code class="directive">LogFormat</code></a>
         option <code>%e</code>. In addition, the decision on whether
         or not to log requests can be made based on the status of 
         environment variables using the conditional form of the 
-        <a href="./mod/mod_log_config.html#customlog" class="directive"><code class="directive">CustomLog</code></a>
-        directive. In combination with <a href="./mod/mod_setenvif.html#setenvif" class="directive"><code class="directive">SetEnvIf</code></a> this allows for flexible control of which 
+        <a href="../mod/mod_log_config.html#customlog" class="directive"><code class="directive">CustomLog</code></a>
+        directive. In combination with <a href="../mod/mod_setenvif.html#setenvif" class="directive"><code class="directive">SetEnvIf</code></a> this allows for flexible control of which 
         requests are logged. For example, you can choose not to log 
         requests for filenames ending in <code>gif</code>, or you can
         choose to only log requests from clients which are outside your
     <h3><a name="response-headers">Conditional Response Headers</a></h3>
         
     
-        <p>The <a href="./mod/mod_headers.html#header" class="directive"><code class="directive">Header</code></a>
+        <p>The <a href="../mod/mod_headers.html#header" class="directive"><code class="directive">Header</code></a>
         directive can use the presence or
         absence of an environment variable to determine whether or not
         a certain HTTP header will be placed in the response to the
         request from the client.</p>
     
     
+
+    <h3><a name="external-filter">External Filter Activation</a></h3>
+        
+
+        <p>External filters configured by <code><a href="../mod/mod_ext_filter.html">mod_ext_filter</a></code>
+        using the <a href="../mod/mod_ext_filter.html#extfilterdefine" class="directive"><code class="directive">ExtFilterDefine</code></a> directive can
+        by activated conditional on an environment variable using the
+        <code>disableenv=</code> and <code>enableenv=</code> options.</p>
+    
+
     <h3><a name="url-rewriting">URL Rewriting</a></h3>
         
     
         <p>The <code>%{ENV:...}</code> form of <em>TestString</em> in
-        the <a href="./mod/mod_rewrite.html#rewritecond" class="directive"><code class="directive">RewriteCond</code></a>
+        the <a href="../mod/mod_rewrite.html#rewritecond" class="directive"><code class="directive">RewriteCond</code></a>
         allows mod_rewrite's rewrite
         engine to make decisions conditional on environment variables.
         Note that the variables accessible in mod_rewrite without the
         mechanisms to modify the way Apache behaves when talking to
         particular clients. To make these mechanisms as flexible as
         possible, they are invoked by defining environment variables,
-        typically with <a href="./mod/mod_setenvif.html#browsermatch" class="directive"><code class="directive">BrowserMatch</code></a>,
-        though <a href="./mod/mod_env.html#setenv" class="directive"><code class="directive">SetEnv</code></a> and 
-        <a href="./mod/mod_env.html#passenv" class="directive"><code class="directive">PassEnv</code></a> could also be used,
+        typically with <a href="../mod/mod_setenvif.html#browsermatch" class="directive"><code class="directive">BrowserMatch</code></a>,
+        though <a href="../mod/mod_env.html#setenv" class="directive"><code class="directive">SetEnv</code></a> and 
+        <a href="../mod/mod_env.html#passenv" class="directive"><code class="directive">PassEnv</code></a> could also be used,
         for example.</p>
     
     <h3><a name="downgrade">downgrade-1.0</a></h3>
         clients may not behave correctly when given an HTTP/1.1
         response, and this can be used to interoperate with them.</p>
     
+
+    <h3><a name="gzip-only-text/html">gzip-only-text/html</a></h3>
+        
+
+        <p>When set to a value of "1", this variable disables the DEFLATE
+        output filter provided by <code><a href="../mod/mod_deflate.html">mod_deflate</a></code> for
+        content-types other than <code>text/html</code>.</p>
     
+
     <h3><a name="nokeepalive">nokeepalive</a></h3>
         
     
-        <p>This disables <a href="./mod/core.html#keepalive" class="directive"><code class="directive">KeepAlive</code></a> when set.</p>
+        <p>This disables <a href="../mod/core.html#keepalive" class="directive"><code class="directive">KeepAlive</code></a> when set.</p>
     
     
     <h3><a name="redirect-carefully">redirect-carefully</a></h3>
         methods.</p>
     
     
+
+   <h3><a name="suppress-error-charset">suppress-error-charset</a></h3>
+       
+
+    <p><em>Available in versions after 2.0.40</em></p>
+
+    <p>When Apache issues a redirect in response to a client request,
+    the response includes some actual text to be displayed in case
+    the client can't (or doesn't) automatically follow the redirection.
+    Apache ordinarily labels this text according to the character set
+    which it uses, which is ISO-8859-1.</p>
+    <p> However, if the redirection is to a page that uses a different
+    character set, some broken browser versions will try to use the
+    character set from the redirection text rather than the actual page.
+    This can result in Greek, for instance, being incorrectly rendered.</p>
+    <p>Setting this environment variable causes Apache to omit the character
+    set for the redirection text, and these broken browsers will then correctly
+    use that of the destination page.</p>
+
+   
+
   <h2><a name="examples">Examples</a></h2>
     
     
@@ -292,4 +331,4 @@ SetEnvIf Referer "^$" local_referal
         ApacheToday tutorial " <a href="http://apachetoday.com/news_story.php3?ltsn=2000-06-14-002-01-PS">
     Keeping Your Images from Adorning Other Sites</a>".</p>
     
-  <hr></blockquote><h3 align="center">Apache HTTP Server Version 2.0</h3><a href="./"><img src="./images/index.gif" alt="Index"></a><a href="./"><img src="./images/home.gif" alt="Home"></a></body></html>
\ No newline at end of file
+  <hr></blockquote><h3 align="center">Apache HTTP Server Version 2.0</h3><a href="./"><img src="../images/index.gif" alt="Index"></a><a href="../"><img src="../images/home.gif" alt="Home"></a></body></html>
\ No newline at end of file
index 583dc4e435193adbd28357915ddbc8f2b3451f4e..3e398a7c706b513422b260e77b9cd6f702201840 100644 (file)
       <modulelist>
         <module>mod_access</module>
         <module>mod_cgi</module>
+        <module>mod_ext_filter</module>
         <module>mod_headers</module>
         <module>mod_include</module>
         <module>mod_log_config</module>
         <directive module="mod_access">Allow</directive>
         <directive module="mod_log_config">CustomLog</directive>
         <directive module="mod_access">Deny</directive>
+        <directive module="mod_ext_filter">ExtFilterDefine</directive>
         <directive module="mod_headers">Header</directive>
         <directive module="mod_log_config">LogFormat</directive>
         <directive module="mod_rewrite">RewriteCond</directive>
         request from the client.</p>
     
     </section>
+
+    <section id="external-filter">
+        <title>External Filter Activation</title>
+
+        <p>External filters configured by <module>mod_ext_filter</module>
+        using the <directive
+        module="mod_ext_filter">ExtFilterDefine</directive> directive can
+        by activated conditional on an environment variable using the
+        <code>disableenv=</code> and <code>enableenv=</code> options.</p>
+    </section>
+
     <section id="url-rewriting">
         <title>URL Rewriting</title>
     
         implemented as a result of a problem with AOL's proxies. Some
         clients may not behave correctly when given an HTTP/1.1
         response, and this can be used to interoperate with them.</p>
-    
     </section>
+
+    <section id="gzip-only-text/html">
+        <title>gzip-only-text/html</title>
+
+        <p>When set to a value of "1", this variable disables the DEFLATE
+        output filter provided by <module>mod_deflate</module> for
+        content-types other than <code>text/html</code>.</p>
+    </section>
+
     <section id="nokeepalive">
         <title>nokeepalive</title>
     
         methods.</p>
     
     </section>
+
+   <section id="suppress-error-charset">
+       <title>suppress-error-charset</title>
+
+    <p><em>Available in versions after 2.0.40</em></p>
+
+    <p>When Apache issues a redirect in response to a client request,
+    the response includes some actual text to be displayed in case
+    the client can't (or doesn't) automatically follow the redirection.
+    Apache ordinarily labels this text according to the character set
+    which it uses, which is ISO-8859-1.</p>
+    <p> However, if the redirection is to a page that uses a different
+    character set, some broken browser versions will try to use the
+    character set from the redirection text rather than the actual page.
+    This can result in Greek, for instance, being incorrectly rendered.</p>
+    <p>Setting this environment variable causes Apache to omit the character
+    set for the redirection text, and these broken browsers will then correctly
+    use that of the destination page.</p>
+
+   </section>
+
   </section>
 
   <section id="examples">