10.5.22. Directory
<Directory /path/to/directory>
and </Directory>
tags create a container used to enclose a group of configuration directives which apply only to a specific directory and its subdirectories. Any directive which is applicable to a directory may be used within Directory
tags.
By default, very restrictive parameters are applied to the root directory (
/
), using the Options
(refer to Section 10.5.23, “ Options
”) and AllowOverride
(refer to Section 10.5.24, “ AllowOverride
”) directives. Under this configuration, any directory on the system which needs more permissive settings has to be explicitly given those settings.
In the default configuration, another
Directory
container is configured for the DocumentRoot
which assigns less rigid parameters to the directory tree so that the Apache HTTP Server can access the files residing there.
The
Directory
container can be also be used to configure additional cgi-bin
directories for server-side applications outside of the directory specified in the ScriptAlias
directive (refer to Section 10.5.41, “ ScriptAlias
” for more information).
To accomplish this, the
Directory
container must set the ExecCGI
option for that directory.
For example, if CGI scripts are located in
/home/my_cgi_directory
, add the following Directory
container to the httpd.conf
file:
<Directory /home/my_cgi_directory> Options +ExecCGI </Directory>
Next, the
AddHandler
directive must be uncommented to identify files with the .cgi
extension as CGI scripts. Refer to Section 10.5.56, “ AddHandler
” for instructions on setting AddHandler
.
For this to work, permissions for CGI scripts, and the entire path to the scripts, must be set to 0755.