]> granicus.if.org Git - apache/blobdiff - docs/manual/mod/mod_setenvif.xml
Describe the new syntax:
[apache] / docs / manual / mod / mod_setenvif.xml
index 1d0c651ef784b41b932a8c55f434abe593869f1d..5949d1db5a7c77df009e3083032552fccbde6604 100644 (file)
@@ -1,6 +1,25 @@
 <?xml version="1.0"?>
 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
 <?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+<!-- $LastChangedRevision$ -->
+
+<!--
+ Copyright 2002-2005 The Apache Software Foundation or its licensors, as
+ applicable.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
 <modulesynopsis metafile="mod_setenvif.xml.meta">
 
 <name>mod_setenvif</name>
@@ -116,7 +135,7 @@ respect to case</description>
 <usage>
     <p>The <directive>SetEnvIf</directive> directive defines
     environment variables based on attributes of the request. The
-    <em>attribute</em> specified in the first argument can be one of three
+    <em>attribute</em> specified in the first argument can be one of four
     things:</p>
 
 <ol>
@@ -139,9 +158,6 @@ respect to case</description>
       on which the request was received (only with versions later
       than 2.0.43)</li>
 
-      <li><code>Remote_User</code> - the authenticated username (if
-      available)</li>
-
       <li><code>Request_Method</code> - the name of the method
       being used (<code>GET</code>, <code>POST</code>, <em>et
       cetera</em>)</li>
@@ -166,6 +182,15 @@ this manner. 'Earlier' means that they were defined at a broader scope
 Environment variables will be considered only if there was no match
 among request characteristics and a regular expression was not
 used for the <em>attribute</em>.</li>
+
+<li>
+ A reference to an extension of an SSL client certificate, located by
+ its object id <em>oid</em>.
+ If a non-SSL request, or in absense of the configured <em>oid</em>,
+ no variable will be set. If the <em>oid</em> is found multiple times,
+ the individual strings will be concatenated, separated by a comma <code>','</code>.
+ The <em>oid</em> should reference a string-valued extension.
+</li>
 </ol>
 
 <p>The second argument (<em>regex</em>) is a <a
@@ -189,7 +214,7 @@ of</p>
     <p>In the first form, the value will be set to "1". The second
     will remove the given variable if already defined, and the
     third will set the variable to the literal value given by
-    <code><em>value</em></code>. Since version 2.1 Apache will
+    <code><em>value</em></code>. Since version 2.0.51 Apache will
     recognize occurrences of <code>$1</code>..<code>$9</code> within
     <var>value</var> and replace them by parenthesized subexpressions
     of <var>regex</var>.</p>
@@ -204,6 +229,8 @@ of</p>
         :<br />
    SetEnvIf object_is_image xbm XBIT_PROCESSING=1<br />
         :<br />
+   SetEnvIf OID("2.16.840.1.113730.1.13") "(.*)" NetscapeComment=$1<br />
+        :<br />
    SetEnvIf ^TS*  ^[a-z].*  HAVE_TS<br />
 </example>
 
@@ -213,6 +240,10 @@ of</p>
     the referring page was somewhere on the
     <code>www.mydomain.com</code> Web site.</p>
 
+    <p>The sixth example will set the <code>NetscapeComment</code>
+    environment variable to the string found in the corresponding
+    SSL client certificate field (if found).</p>
+
     <p>The last example will set environment variable
     <code>HAVE_TS</code> if the request contains any headers that
     begin with "TS" whose values begins with any character in the