summaryrefslogtreecommitdiff
path: root/docs/manual/mod/mod_env.xml
blob: 5116b39f41935a4efe95bbdbe4b1a3b30237b2d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
<!-- $LastChangedRevision$ -->

<!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You 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_env.xml.meta">

<name>mod_env</name>
<description>Modifies the environment which is passed to CGI scripts and
SSI pages</description>
<status>Base</status>
<sourcefile>mod_env.c</sourcefile>
<identifier>env_module</identifier>
<summary>
    <p>This module allows for control of internal environment variables that
    are used by various Apache HTTP Server modules. These variables are also
    provided to CGI scripts as native system environment variables, and available
    for use in SSI pages. Environment variables may be passed from the shell
    which invoked the <program>httpd</program> process. Alternatively,
    environment variables may be set or unset within the configuration process.</p>
</summary>
<seealso><a href="../env.html">Environment Variables</a></seealso>
<seealso><directive module="mod_setenvif">SetEnvIf</directive></seealso>

<directivesynopsis>
<name>PassEnv</name>
<description>Passes environment variables from the shell</description>
<syntax>PassEnv <var>env-variable</var> [<var>env-variable</var>]
...</syntax>
<contextlist><context>server config</context><context>virtual host</context>
<context>directory</context><context>.htaccess</context></contextlist>
<override>FileInfo</override>

<usage>
    <p>Specifies one or more native system environment variables to make available
    as internal environment variables, which are available to Apache HTTP Server modules
    as well as propagated to CGI scripts and SSI pages. Values come from the
    native OS environment of the shell which invoked the
    <program>httpd</program> process.</p>

    <example><title>Example</title>
    <highlight language="config">
      PassEnv LD_LIBRARY_PATH
      </highlight>
    </example>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>SetEnv</name>
<description>Sets environment variables</description>
<syntax>SetEnv <var>env-variable</var> [<var>value</var>]</syntax>
<contextlist><context>server config</context><context>virtual host</context>
<context>directory</context><context>.htaccess</context></contextlist>
<override>FileInfo</override>

<usage>
    <p>Sets an internal environment variable, which is then available to Apache
    HTTP Server modules, and passed on to CGI scripts and SSI pages.</p>

    <example><title>Example</title>
    <highlight language="config">
      SetEnv SPECIAL_PATH /foo/bin
      </highlight>
    </example>

    <p> If you omit the <var>value</var> argument, the variable is set to
    an empty string.</p>

    <note><p>The internal environment variables set by this directive are set
    <em>after</em> most early request processing directives are run, such as access
    control and URI-to-filename mapping.  If the environment variable you're
    setting is meant as input into this early phase of processing such as the
    <directive module="mod_rewrite">RewriteRule</directive> directive, you should
    instead set the environment variable with
    <directive module="mod_setenvif">SetEnvIf</directive>.</p>
    </note>

</usage>
<seealso><a href="../env.html">Environment Variables</a></seealso>
</directivesynopsis>

<directivesynopsis>
<name>UnsetEnv</name>
<description>Removes variables from the environment</description>
<syntax>UnsetEnv <var>env-variable</var> [<var>env-variable</var>]
...</syntax>
<contextlist><context>server config</context><context>virtual host</context>
<context>directory</context><context>.htaccess</context></contextlist>
<override>FileInfo</override>

<usage>
    <p>Removes one or more internal environment variables from those passed
    on to CGI scripts and SSI pages.</p>

    <example><title>Example</title>
    <highlight language="config">
      UnsetEnv LD_LIBRARY_PATH
      </highlight>
    </example>
</usage>
</directivesynopsis>

</modulesynopsis>