天天看点

Apache的配置文件

1.文件保存位置

配置文件位置

#源码包安装:
PREFIX/etc/httpd.conf(主配置文件)
PREFIX/etc/extra/*.conf(子配置文件)
#rpm包安装
/etc/httpd/conf/httpd.conf           

网页文件位置

#源码包安装:
PREFIX/htdocs
#rpm包安装:
/var/www/html           

日志文件位置

#源码包安装:
PREFIX/logs
#rpm包安装:
/var/log/httpd           

2.配置文件详解

\#配置文件严格区分大小写

(1)针对主机环境

ServerRoot "/usr/local/apache2" #apache主目录
Listen 80        #监听端口
LoadModule xxx   #加载的相关模块
User daemon      #用户
Group daemon     #用户组
ServerAdmin [email protected]         #管理员邮箱
ServerName localhost:80             #服务器名(没有域名解析时,使用临时解析,默认不开启)
ErrorLog "logs/error_log"           #服务器错误日志
CustomLog "logs/access_log" common  #访问记录日志
DirectoryIndex index.html           #默认网页文件名,优先级顺序
Include etc/extra/httpd-vhosts.conf #子配置文件中的内容也会加载生效           

(2)主页目录及权限

DocumentRoot "/usr/local/apache2/htdocs"  #网页文件存放目录

<Directory "/usr/local/apache2/htdocs">

Options Indexes FollowSymLinks
#定义指定目录的权限
    None        #没有任何额外权限
    All        #所有权限(除去MultiViews外)
    Indexes        #浏览权限(当此目录下没有默认网页文件时,显示目录内容)
    FollowSymLinks  #准许软连接到其他目录
    MultiViews      #准许文件名泛匹配(需要手动开启模块才有效)
    
AllowOverride None
#定义是否允许目录下.htaccess文件中的权限生效
    None        #.htaccess中权限不生效
    All        #文件中所有权限都生效
    AuthConfig  #文件中,只有网页认证的权限生效

Require all granted(denied)
#访问控制列表

</Directory>


<IfModule dir_module>
#此标签用来指定访问到指定目录时自动加载哪个页面文件
    DirectoryIndex test.php index.html  #可以写多个,但是有优先级
</IfModule>