Apahce configuration instructions can be divided into two blocks, core instructions and instructions provided by third parties. In apache, each instruction corresponds to a module, and among all modules, the most important ones are core_module, so_module, http_module, and mpm modules. Except for so_moudle, other modules cannot be turned off or disabled.
1: httpd.conf
(1) Main server part
1, ServerName: Define the apache default host name, you can Is the domain name or IP address
2, ServerRoot: used to define the directory where the server is located, this path is usually specified by --prefix during configuration
3, DocumentRoot: used to specify Apache provides the root directory of the page service. This path must be an absolute path rather than a relative path. If there are spaces, it needs to be enclosed in quotation marks.
4. ServerAdmin: The address to send an email to the administrator after a server error.
5, ServerAlias and Alias: are all used to map directories, but ServerAlias identifies the mapped directory as a CGI script directory and treats all files in this directory as CGI scripts. But Alias is just mapped to a normal directory
6, User and Group: used to define the user and user group used to run the apache child process
7, Listen: used to define the listening apache Port number
8, LoadModule command: used to load modules or target files LoadModule cgi_module modules/mod_cgi.so_module
9, ErrorDocument: Custom error page information ErrorDocument 500 "unknown error" ErrorDocument 404 "/var/server/www/cgi-bin/missing_404.pl" ErrorDocument 402 http://www.nicky.com/error_402.html
10. options: Determine which directories to use those features , these features are as follows:
None: The option command will not take effect
ExecCGI: Allows execution of CGI scripts in the current directory
Includes: Allows the use of SSI functions
IncludesNOEXEC: The SSI function is allowed, but the exec cgi and exec cmd functions are disabled.
Indexes: Enable the index function. For example, if a request is made to the directory URLz and there is no index file specified by the DirectoryIndex directive, the server will Automatically return a list of requested directory contents
FollowSymLinks: Allows the use of symbolic links in the current environment, but will be ignored in the Location container
All: Uses all features except MultiViews, also options The default parameters
MultiViews: used to start the multi-view function provided by the mod_negotiations module
11, ServerTokens: OS/Major/Full affects the detail of the error footer information, and is generally not recommended.
(2) Container part
1,
<IfModule mpm_netware_module><br> DirectoryIndex index.html <br></IfModule>
If loaded Enter then execute <IfModule! mpm_netware_module><br> DirectoryIndex index.html <br></IfModule>
If not loaded, execute
2
Based on
<IfDefine Proxy>
LoadModule proxy_module modules/libproxy.so
##
Order Deny,Allow
Deny from all
The above example disables access to the /var/apache/html directory. Any request to /var/apache/html will be rejectedIf you want the directory to use regular expressions, you need to add a ~
Order Deny,Allow
Allow from all
<p>4 <Files> and <FilesMatch><br>Files: only works on files, you can also use wildcards and [] and ~ in front of the regular expression to use regular expressions<br><code>< Files "^\.css"><br> Order Deny,Allow<br>Allow from All<br></Files>
FilesMatch: Files without adding a ~ symbol<FilesMatch "\.(gif|jpe?g|png)$"><br>Order Deny,Allow<br>Allow from All<br></FilesMatch>
5
Order Allow,Deny
Deny from All
If the URL starts with cgi, it will be rejected
In addition, you can also URL requests are mapped to the Apache module handler, for example, using the mod_status module: <Location /server-status><br>SetHandler server-status<br></Location>
If you use the above configuration. Then when accessing /server-status, Apache will hand over the connection to the mod_status module for processing and return an Apache server running status page
Container processing order issue:
Apache will process it first The Directory container (but Directory and .htaccess with regular expressions will not be processed,) then the Files and FilesMatch containers, and then the Location and LocationMatch containers
<Location /var/apache /html>
Order deny,allow
## Allow from All
##
Above For example, since Apache will process the <Directory> container first, and the <Location> container processed last will overwrite the previous Directory configuration, so www.json.com will be allowed to be accessed by users. If the containers are the same, they will be listed in dictionary order. Work from short to long.
linux video tutorial
The above is the detailed content of Apache service configuration explained in detail. For more information, please follow other related articles on the PHP Chinese website!