天天看點

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>