Apache配置文件詳解


1.1 ServerRoot 配置

【ServerRoot "" 主要用於指定Apache的安裝路徑,此選項參數值在安裝Apache時系統會自動把Apache的路徑寫入。Windows安裝時,該選項的值為Windows安裝的路徑,Linux安裝時該選項值為編譯時選擇的路徑】

wKioL1WfibyhUZG7AAFImdI7agk037.jpg

 

1.2 Mutex default:logs

互斥:允許你為多個不同的互斥對象設置互斥機制【mutex mechanism】和互斥文件目錄,或者修改全局默認值

如果互斥對象是基於文件的以及默認的互斥文件目錄不在本地磁盤或因為其它原因而不適用,那么取消注釋並改變目錄。

【下面這個命令是改變互斥對象的目錄】

wKiom1WfiBHjB79VAADsf5RA8NU997.jpg

 

1.3 Listen 配置

【Listen主要偵聽web服務端口狀態,默認為:80,即偵聽所有的地址的80端口,注意這里也可以寫成IP地址的偵聽形式,不寫即默認的地址:0.0.0.0】

wKiom1WfiEXSH2sqAAEmIxv6808341.jpg

 

1.4 Dynamic Shared Object (DSO) Support(動態共享對象支持)

【主要用於添加Apache一些動態模塊,比如php支持模塊。重定向模塊,認證模塊支持,注意如果需要添加某些模塊支持,只需把相關模塊前面注釋符號取消掉。如圖所示,要對Apache添加某個功能模塊,把前面的注釋符號去掉就行】

wKioL1WehRSi6n2oAAK0Vu-XAgI141.jpg

 

1.5 Apache運行用戶配置

wKiom1WegzDRuAdqAAEKzZgGZts701.jpg

【此選項主要用指定Apache服務的運行用戶和用戶組,默認為:daemon,如圖所示下】

 

1.6 Apache服務默認管理員地址設置

wKiom1WehuuyR4s2AACpeUbjV4w484.jpg

【此選項主要用指定Apache服務管理員通知郵箱地址,選擇默認值即可,如果有真實的郵箱地址也可以設置此值】

 

1.7 Apache的默認服務名及端口設置

wKioL1WeiiniIbPvAAD1XWMek0g103.jpg

【此選項主要用指定Apache默認的服務器名以及端口,默認參數值設置為:ServerName localhost:80即可】

 

1.8 Apache的根目錄訪問控制設置

wKioL1Wei5yx_wqwAAA5clf8ze4273.jpg

【此選項主要是針對用戶對根目錄下所有的訪問權限控制,默認Apache對根目錄訪問都是拒絕訪問。后面會繼續講到】

 

1.6 Apache的默認網站根目錄設置及訪問控制

wKioL1WejjLxXcqWAAJHMz8_jUA198.jpg

【此區域的配置文件,主要是針對Apache默認網站根目錄的設置以及相關的權限訪問設置,默認對網站的根目錄具有訪問權限,此選項默認值即可】

 

1.9 Apache的默認首頁設置

wKiom1WfQSXTLMGpAAA7CCk9wJw384.jpg

【此區域文件主要設置Apache默認支持的首頁,默認只支持:index.html首頁,如要支持其他類型的首頁,需要在此區域添加:如index.php表示支持index.php類型首頁】

 

1.10 Apache關於.ht文件訪問配置

wKioL1WfRIDDDA8wAAAmcxvkf2E690.jpg

【此選項主要是針對.ht文件訪問控制,默認為具有訪問權限,此區域文件默認即可】

 

1.11 Apache關於日志文件配置

wKioL1WfRZCAkY20AAPnRvfax7Q047.jpg【此區域文件主要是針對Apache默認的日志級別,默認的訪問日志路徑,默認的錯誤日志路徑等相關設置,此選項內容默認即可】

 

1.11 URL重定向,cgi模塊配置說明

wKioL1WfV_qh07OhAAL5aVMdpN8862.jpg

wKioL1WfWOKQHQhyAACYItUJ6v8920.jpg

wKiom1WfVybggJisAACinUi9D9o998.jpg

【此區域文件主要包含一些URL重定向,別名,腳本別名等相關設置,以及一些特定的處理程序,比如cgi設置說明。后期會繼續說道】

 

1.12 MIME媒體文件,以及相關http文件解析配置說明

wKiom1WfWDSgvvfoAARRc4T4ZYI932.jpg

【此區域文件主要包含一些mime文件支持,以及添加一些指令在給定的文件擴展名與特定的內容類型之間建立映射關系,比如添加對php文件擴展名映射關系。】

 

1.13 服務器頁面提示設置

wKiom1WfhWbwF212AANVCfLCDzA410.jpg

【此區域可定制的訪問錯誤響應提示,支持三種方式:1明文 ,2本地重定向 3,外部重定向;另外還包括內存映射或“發送文件系統調用”可被用於分發文件等配置】

 

1.14 Apache服務器補充設置

wKiom1Wfhiry1h5lAAN2Zy_KTOQ943.jpg

【此區域主要包括:服務器池管理,多語言錯誤消息,動態目錄列表形式配置,語言設置,用戶家庭目錄,請求和配置上的實時信息,虛擬主機,Apache Http Server手冊,分布式創作和版本控制,多種類默認設置,mod_proxy_html,使其支持HTML4/XHTML1等等補充配置的補充】

 

1.15 Apache服務器安全連接設置

wKiom1WfhwTTxhBSAAINkbTUD5A747.jpg

【此區域主要是關於服務器安全連接設置,用於使用https連接服務器等設置的地方】

二、Apache擴展的配置文件

/application/apache/conf/extra          # apache擴展的配置文件

[root@es extra]# ll

total 56

-rw-r--r-- 1 root root  2859 Jan 10 01:49 httpd-autoindex.conf

-rw-r--r-- 1 root root  1753 Jan 10 01:49 httpd-dav.conf

-rw-r--r-- 1 root root  2344 Jan 10 01:49 httpd-default.conf

-rw-r--r-- 1 root root  1103 Jan 10 01:49 httpd-info.conf

-rw-r--r-- 1 root root  5078 Jan 10 01:49 httpd-languages.conf

-rw-r--r-- 1 root root   932 Jan 10 01:49 httpd-manual.conf

-rw-r--r-- 1 root root  3789 Jan 10 01:49 httpd-mpm.conf

-rw-r--r-- 1 root root  2207 Jan 10 01:49 httpd-multilang-errordoc.conf

-rw-r--r-- 1 root root 11185 Jan 10 01:49 httpd-ssl.conf

-rw-r--r-- 1 root root   817 Jan 10 01:49 httpd-userdir.conf

-rw-r--r-- 1 root root  1507 Jan 10 01:49 httpd-vhosts.conf # 虛擬主機配置文件

 

三、httpd-vhosts.conf虛擬主機配置文件注釋

[root@es extra]# egrep -v "^.*#|^$"  httpd-vhosts.conf |nl

    1  NameVirtualHost *:80                                # 基於名稱的虛擬主機配置( *:80表示監聽本機所有ip)

    2  <VirtualHost *:80>                                  # 定義一個虛擬主機

    3      ServerAdmin webmaster@dummy-host.example.com    # 配置管理員郵箱

    4      DocumentRoot "/application/apache2.2.22/docs/dummy-host.example.com"  # 程序的站點目錄

    5      ServerName dummy-host.example.com               # 域名服務,需要apache mode_alias模塊支持

    6      ServerAlias www.dummy-host.example.com          # 虛擬主機別名

    7      ErrorLog "logs/dummy-host.example.com-error_log"# 錯誤的日志路徑

    8      CustomLog "logs/dummy-host.example.com-access_log" common  #訪問日志配置(生產環境我們用combined格式代替common格式)

    9  </VirtualHost>

   10  <VirtualHost *:80>

   11      ServerAdmin webmaster@dummy-host2.example.com

   12      DocumentRoot "/application/apache2.2.22/docs/dummy-host2.example.com"

   13      ServerName dummy-host2.example.com

   14      ErrorLog "logs/dummy-host2.example.com-error_log"

   15      CustomLog "logs/dummy-host2.example.com-access_log" common

   16  </VirtualHost>

 

四、Apache服務存放站點的目錄

/application/apache/htdocs              # 默認存放網頁的路徑,輸入IP 到此目錄 能夠見到it's wroks! 就是此目錄

[root@es htdocs]# less  index.html

<html><body><h1>It works!</h1></body></html>

 

 

五、Apache服務目錄結構說明

[root@es htdocs]# ls /application/apache/

bin  build  cgi-bin  conf  error  htdocs  icons  include  lib  logs  man  manual  modules

bin啟動文件目錄說明

|-- bin                    # apache服務的命令目錄

|   |-- ab                 # http服務性能測試工具

|   |-- apachectl          # apache啟動命令

|   |-- apr-1-config      

|   |-- apu-1-config

|   |-- apxs               # http服務編譯和安裝擴展模塊使用工具,在DSO方式模塊編譯時用到

|   |-- checkgid

|   |-- dbmmanage

|   |-- envvars

|   |-- envvars-std

|   |-- htcacheclean       # 清理磁盤緩沖區的控制命令

|   |-- htdbm

|   |-- htdigest

|   |-- htpasswd           # 建立和更新基本認證文件

|   |-- httpd              # httpd為apache的控制命令程序

|   |-- httxt2dbm

|   |-- logresolve

|    -- rotatelogs         # apache自帶的日子輪詢命令(cronolog生產環境使用比較多)。

 

conf配置文件目錄

[root@es htdocs]# ls /application/apache/conf/

extra  httpd.conf  magic  mime.types  original

/application/apache/conf/         # apache配置所有的配置文件目錄

|-- extra                         # 額外的apache配置文件目錄 如:httpd-vhost.conf

|   |-- httpd-autoindex.conf      

|   |-- httpd-dav.conf

|   |-- httpd-default.conf

|   |-- httpd-info.conf

|   |-- httpd-languages.conf

|   |-- httpd-manual.conf

|   |-- httpd-mpm.conf

|   |-- httpd-multilang-errordoc.conf

|   |-- httpd-ssl.conf

|   |-- httpd-userdir.conf

|   |-- httpd-vhosts.conf

|-- httpd.conf                     # apache主配置文件

|-- magic

|-- mime.types

|-- original

|   |-- extra

|   |   |-- httpd-autoindex.conf

|   |   |-- httpd-dav.conf                 # dav支持配置

|   |   |-- httpd-default.conf             # 這個文件里配置的是apache的相關服務參數:超時時間、保持鏈接

|   |   |-- httpd-info.conf

|   |   |-- httpd-languages.conf           # 語言支持

|   |   |-- httpd-manual.conf

|   |   |-- httpd-mpm.conf # 服務器池管理,也是優化apache的一個配置文件(apache的模式以及配置鏈接數,常用模式為worker模式和profork模式,默認porfork)

|   |   |-- httpd-multilang-errordoc.conf

|   |   |-- httpd-ssl.conf                 # 提供apache ssl支持配置文件

|   |   |-- httpd-userdir.conf

|   |   |-- httpd-vhosts.conf              # 虛擬機的配置文件

|   |-- httpd.conf

 

站點存放目錄

[root@es apache]# ls -l htdocs/    # 默認的首頁文件都放在此目錄當中。

total 4

-rw-r--r-- 1 root root 44 Nov 21  2004 index.html

 

日志存放目錄

[root@es apache]# tree logs

logs                 # apache服務默認的日志路徑,包括錯誤日志和訪問日志

|-- access_log       # apache服務訪問日志 tail -f命令可以查看網頁用戶訪問的信息

|-- cgisock.16406    

|-- error_log        # apache服務的錯誤日志。如:apache服務啟動故障

|-- httpd.pid        # httpd的pid文件,http進程啟動后,會把所有進程的id號寫到此文件

 

模塊目錄

[root@es apache]# ls -l manual/     # apache的模塊目錄 如php mencache

total 2984

-rw-r--r-- 1 root root   543 May  6  2008 bind.html

-rw-r--r-- 1 root root 11422 Jan  3  2012 bind.html.de


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM