您的位置:首页 > 理论基础 > 计算机网络

Apache配置(httpd.conf文件)

2015-04-02 18:02 316 查看
1.服务器全局配置

ServerRoot

Apache服务器安装的目录,eg——ServerRoot “D:/Apache2.2”

ServerAdmin

设置返回给客户端错误信息中的邮件地址,例如错误日志里面,eg——admin@fn.com

ServerName

设置服务器主机名,主要用于Apache虚拟主机的配置,此时该选项会出现在 apache目录/conf/extra/httpd-vhosts.conf

中,例如:

<VirtualHost *:80>
ServerAdmin webmaster@dummy-host2.fn.com
DocumentRoot "d:/mfeiniucom"
ServerName m.feiniu.com
ErrorLog logs/m.feiniu.com-error_log
CustomLog logs/m.feiniu.com-access_log common
<Directory "d:/mfeiniucom">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>


DocumentRoot

指定了httpd伺服的本地文件目录,eg——DocumentRoot “D:/Apache2.2/htdocs”

注:指定DocumentRoot时不能在最后加“/”

2、特定范围

启动/重启有效

IfDefine

用于当运行包含条件的指令时执行的操作。例如:

<IfDefine ReverseProxy>
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule proxy_module modules/libproxy.so
</IfDefine>


即当调用 httpd -DReverseProxy…时,Apache会加载模块。

IfModule

用于当载入模块时执行的操作。例如;

<IfModule mod_mime_magic.c>
MimeMagicFile conf/magic
</IfModule>


只有在mod_mime_magic模块被启用才执行内容操作。

注:IfModule需要配合使用LoadModule指令,并且IfModule要在LoadModule指令之后才可以。

IfVersion

当正在执行的服务器版本与条件符合是才有效,例如:

<IfVersion >= 2.1>
# 仅在版本高于 2.1.0 的时候才生效
</IfVersion>


注:以上三个配置也可以加上!条件。

作用域

Directory、DirectoryMatch

针对某一目录及子目录进行配置,例如:

<Directory "D:/Apache2.2/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Deny from All
Allow from all
</Directory>


AllowOverride:指明Apache服务器是否去找.htacess文件作为配置文件。设置为 None 时, .htaccess 文件将被完全忽略;当此指令设置为 All 时,所有具有 “.htaccess” 作用域的指令都允许出现在 .htaccess 文件中。

Options:目录文件显示特征,如果设置为Indexes,则URL访问时是文件目录,而不是文件内容;如果是MultiViews,则foo.txt文件可以通过/foo来访问到文件等。

Order:用来控制目录和文件的访问授权。最终权限根据该选项中allow和deny的位置确定,具体的权限设置就是后面的Allow和Deny。上例中的最终权限是全部不能访问。(详见/article/4634286.html

注:Allow和Deny中间不能有空格!!!!

Files、FilesMatch

和Directory、DirectoryMatch类似。

3、日志

ErrorLog

错误日志存放的位置,例如:

ErrorLog logs/error.log


LogLevel

控制错误日志的详细程度,等级如下:

emerg 紧急(系统无法使用)

alert 必须立即采取措施

crit 致命情况

error 错误情况

warn 警告情况

notice 一般重要情况

info 普通信息

debug 调试信息

LogFormat

日志格式,例如:

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common


CustomLog

建立一个使用指定别名的新日志文件,除非其文件名是以斜杠开头的绝对路径,否则其路径就是相对于ServerRoot的相对路径,例如:

CustomLog logs/access_log "%h %l %u %t \"%r\" %>s %b"
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: