Apache服务配置详细讲解
3<Directory><DirectoryMatch>容器:
</Directory>
4<Files>和<FilesMatch>
<Direcotry/var/apache/html>
7、Listen:用来概念监听apache的端口号
Denyfromall
AllowfromAll
FilesMatch:Files而无需加一个~符号
Directory:让它封装的指令在它的指定的目录或者他的子目录起用途,这个目录需要是一个完整的路径,当然你也可以用通配符*?匹配目录,也考虑借助用[]来确定字符范围,不过不论是哪一种都不可以匹配/
OrderDeny,Allow
10、options:决定在哪些目录中用那些特质,这部分特质如下:
</Location>
</Files>
上述例子,因为Apache会先处置<Directory>容器,最后处置的<Location>容器会覆盖之前Directory配置,因此对于www.json.com将是允许被用户访问的,假如容器相同则根据字典顺序由短到长来处置。
1、ServerName:概念apache默认主机名,可以是域名或者IP地址
DirectoryMatch:和Directory用途类似,只是他可以直接同意正则匹配而无需加一个~符号
AllowfromAll
MultiViews:用于启动mod_negotiations模块提供的多看重图功能
5<Location>和<LocationMatch>:只不过对URL进行访问控制
假如期望目录用正则表达式,那样需要在前面加一个~
OrderAllow,Deny
</IfModule>
9、ErrorDocument:自义错误页面信息ErrorDocument500"unknownerror"ErrorDocument404"/var/server/www/cgi-bin/missing_404.pl"ErrorDocument402http://www.nicky.com/error_402.html
(1)主服务器部分
依据
Apahce配置指令可以分为两大块,核心指令和第三方提供的指令。在Apache中,每个指令都对应着一个模块,而在所有模块中,非常重要的就是core_module,so_module,http_module,与mpm模块,他们除去so_moudle以外的其他模块都不能关掉或者禁止.1、httpd.conf
OrderDeny,Allow
假如用上面的配置。那样访问/server-status,apache会将连接交给mod_status模块处置,并返回一个Apache服务器运行状况页面
5、ServerAlias和Alias:都用于映射目录,只不过ServerAlias将映射的目录辨别为CGI脚本目录,并将此目录所有文件都作为CGI脚本对待。但Alias只不过映射为一个一般的目录
假如以cgi开头URL则会被拒绝
OrderDeny,Allow
SetHandlerserver-status
DenyfromAll
</Location>
假如载入则实行
Denyfromwww.jons.com
DirctoryIndexindex.html
IncludesNOEXEC:允许用SSI功能,但execcgiandexeccmd功能禁用
Apache会优先处置Directory容器接着处置Files和FilesMatch容器,再接着就是处置Location和LocationMatch容器
<Directory/var/apache/html>
2<IfDefine>容器:封装一组条件为真时才生效的指令,用途于serverconfig,virtualhost,directory,.htaccess,和IfModule不同在于,他是以模块是不是加载作为判断,但IfDefine是以条件为判断
另外还可以将URL请求映射到Apache模块处置器上,比如用mod_status模块:
容器的处置顺序问题:
3、DocumentRoot:用于指定apache提供页面服务的根目录,这个路径需要是绝对路径而不是相对路径,假如有空格还需要用引号括起来
Allowfromall
<Files"^\.css">
</Location>
(2)容器部分
1、<IfModule>容器:容器用途于模块,他会第一判断模块是不是载入,然后再决定是不是进行处置,即只有当判断结果为真时,才会实行容器内的指令,相反假如为假,则会全部忽视,可以用<IfModule模块名>或者<IfModule!模块名>来判断模块是不是载入
假如不载入则实行
</Direcotry>
All:用除MultiViews以外的所有特质,也是options的默认参数
Orderallow,deny
<Location/server-status>
<Location/cgi>
<IfDefineProxy>
Includes:允许用SSI功能
ExecCGI:允许目前目录下实行CGI脚本
</IfModule>
<Directory~"^/var/apache[0-9]{2}/html">
<IfModulempm_netware_module>
8、LoadModule指令:用于加载模块或者目的文件LoadModulecgi_modulemodules/mod_cgi.so_module
<IfModule!mpm_netware_module>
Files:只用途于文件,也可以用通配符和[]与在正则表达式前面~来用正则表达式
4、ServerAdmin:服务器出错后给管理员发邮件的地址
Allowfromall
2、ServerRoot:用于概念服务器所在的目录,这个路径一般是在配置时候由--prefix来指定的
Orderdeny,allow
</DirectoryMatch>
OrderDeny,Allow
AllowfromAll
<FilesMatch"\.(gif|jpe?g|png)$">
6、User和Group:用于概念用于运行apache子进程的用户和用户组
OrderDeny,Allow
11、ServerTokens:OS/Major/Full影响显示错误页脚信息的详细程度,通常不主张用
上述例子禁止了对/var/apache/html目录的访问权限。任何请求到/var/apache/html都会被拒绝
None:option指令将不会起用途
FollowSymLinks:允许在目前环境用符号连接,但在Location容器中会被忽视
DirctoryIndexindex.html
<Location/var/apache/html>
</IfDefine>
</FilesMatch>
<DirectoryMatch"^/var/apache[0-9]{2}/html">
AllowfromAll
LoadModuleproxy_modulemodules/libproxy.so
</Directory>
Indexes:开起索引功能,譬如一个请求到目录URLz中没有DirectoryIndex指令指定的索引文件,那样服务器会自动返回一个请求目录内容列表
- 上一篇:拼多多曝光量和排名的提升技巧
- 下一篇:没有了