This section explains configuration of the Apache2 server default settings. For example, if you add a
virtual host, the settings you configure for the virtual host take precedence for that virtual host. For a
directive not defined within the virtual host settings, the default value is used.
• The DirectoryIndex is the default page served by the server when a user requests an index of a
directory by specifying a forward slash (/) at the end of the directory name.
For example, when a user requests the page http://www.example.com/this_directory/, he or she
will get either the DirectoryIndex page if it exists, a server-generated directory list if it does not and
the Indexes option is specified, or a Permission Denied page if neither is true. The server will try
to find one of the files listed in the DirectoryIndex directive and will return the first one it finds.
If it does not find any of these files and if Options Indexes is set for that directory, the server will
generate and return a list, in HTML format, of the subdirectories and files in the directory. The
default value, found in /etc/apache2/mods-available/dir.conf is "index.html index.cgi index.pl
index.php index.xhtml index.htm". Thus, if Apache2 finds a file in a requested directory matching
any of these names, the first will be displayed.
• The ErrorDocument directive allows you to specify a file for Apache2 to use for specific error
events. For example, if a user requests a resource that does not exist, a 404 error will occur, and per
Apache2's default configuration, the file /usr/share/apache2/error/HTTP_NOT_FOUND.html.var
will be displayed. That file is not in the server's DocumentRoot, but there is an Alias directive in /
etc/apache2/apache2.conf that redirects requests to the /error directory to /usr/share/apache2/
error/.
To see a list of the default ErrorDocument directives, use this command:
grep ErrorDocument /etc/apache2/apache2.conf
• By default, the server writes the transfer log to the file /var/log/apache2/access.log. You can
change this on a per-site basis in your virtual host configuration files with the CustomLog directive,
or omit it to accept the default, specified in /etc/apache2/apache2.conf. You may also specify
the file to which errors are logged, via the ErrorLog directive, whose default is /var/log/apache2/
error.log. These are kept separate from the transfer logs to aid in troubleshooting problems with
your Apache2 server. You may also specify the LogLevel (the default value is "warn") and the
LogFormat (see /etc/apache2/apache2.conf for the default value).
• Some options are specified on a per-directory basis rather than per-server. Options is one of these
directives. A Directory stanza is enclosed in XML-like tags, like so:
/var/www/mynewsite>
The Options directive within a Directory stanza accepts one or more of the following values
(among others), separated by spaces:
• ExecCGI - Allow execution of CGI scripts. CGI scripts are not executed if this option is not
chosen.
Most files should not be executed as CGI scripts. This would be very dangerous. CGI
scripts should kept in a directory separate from and outside your DocumentRoot, and
only this directory should have the ExecCGI option set. This is the default, and the
default location for CGI scripts is /usr/lib/cgi-bin.
• Includes - Allow server-side includes. Server-side includes allow an HTML file to include other
4files. This is not a common option. See the Apache2 SSI HOWTO for more information.
• IncludesNOEXEC - Allow server-side includes, but disable the #exec and #include commands
in CGI scripts.
• Indexes - Display a formatted list of the directory's contents, if no DirectoryIndex (such as
index.html) exists in the requested directory.
For security reasons, this should usually not be set, and certainly should not be set on
your DocumentRoot directory. Enable this option carefully on a per-directory basis
only if you are certain you want users to see the entire contents of the directory.
• Multiview - Support content-negotiated multiviews; this option is disabled by default for
5security reasons. See the Apache2 documentation on this option .
• SymLinksIfOwnerMatch - Only follow symbolic links if the target file or directory has the
same owner as the link.
virtual host, the settings you configure for the virtual host take precedence for that virtual host. For a
directive not defined within the virtual host settings, the default value is used.
• The DirectoryIndex is the default page served by the server when a user requests an index of a
directory by specifying a forward slash (/) at the end of the directory name.
For example, when a user requests the page http://www.example.com/this_directory/, he or she
will get either the DirectoryIndex page if it exists, a server-generated directory list if it does not and
the Indexes option is specified, or a Permission Denied page if neither is true. The server will try
to find one of the files listed in the DirectoryIndex directive and will return the first one it finds.
If it does not find any of these files and if Options Indexes is set for that directory, the server will
generate and return a list, in HTML format, of the subdirectories and files in the directory. The
default value, found in /etc/apache2/mods-available/dir.conf is "index.html index.cgi index.pl
index.php index.xhtml index.htm". Thus, if Apache2 finds a file in a requested directory matching
any of these names, the first will be displayed.
• The ErrorDocument directive allows you to specify a file for Apache2 to use for specific error
events. For example, if a user requests a resource that does not exist, a 404 error will occur, and per
Apache2's default configuration, the file /usr/share/apache2/error/HTTP_NOT_FOUND.html.var
will be displayed. That file is not in the server's DocumentRoot, but there is an Alias directive in /
etc/apache2/apache2.conf that redirects requests to the /error directory to /usr/share/apache2/
error/.
To see a list of the default ErrorDocument directives, use this command:
grep ErrorDocument /etc/apache2/apache2.conf
• By default, the server writes the transfer log to the file /var/log/apache2/access.log. You can
change this on a per-site basis in your virtual host configuration files with the CustomLog directive,
or omit it to accept the default, specified in /etc/apache2/apache2.conf. You may also specify
the file to which errors are logged, via the ErrorLog directive, whose default is /var/log/apache2/
error.log. These are kept separate from the transfer logs to aid in troubleshooting problems with
your Apache2 server. You may also specify the LogLevel (the default value is "warn") and the
LogFormat (see /etc/apache2/apache2.conf for the default value).
• Some options are specified on a per-directory basis rather than per-server. Options is one of these
directives. A Directory stanza is enclosed in XML-like tags, like so:
The Options directive within a Directory stanza accepts one or more of the following values
(among others), separated by spaces:
• ExecCGI - Allow execution of CGI scripts. CGI scripts are not executed if this option is not
chosen.
Most files should not be executed as CGI scripts. This would be very dangerous. CGI
scripts should kept in a directory separate from and outside your DocumentRoot, and
only this directory should have the ExecCGI option set. This is the default, and the
default location for CGI scripts is /usr/lib/cgi-bin.
• Includes - Allow server-side includes. Server-side includes allow an HTML file to include other
4files. This is not a common option. See the Apache2 SSI HOWTO for more information.
• IncludesNOEXEC - Allow server-side includes, but disable the #exec and #include commands
in CGI scripts.
• Indexes - Display a formatted list of the directory's contents, if no DirectoryIndex (such as
index.html) exists in the requested directory.
For security reasons, this should usually not be set, and certainly should not be set on
your DocumentRoot directory. Enable this option carefully on a per-directory basis
only if you are certain you want users to see the entire contents of the directory.
• Multiview - Support content-negotiated multiviews; this option is disabled by default for
5security reasons. See the Apache2 documentation on this option .
• SymLinksIfOwnerMatch - Only follow symbolic links if the target file or directory has the
same owner as the link.
Comments
Post a Comment
https://gengwg.blogspot.com/