httpd.conf是wamp下Apache的主要配置文件,包含服務(wù)器的配置指令,詳細(xì)參見Apache官方文檔。
指定文件名時(shí),需要用斜杠代替反斜杠。
eg: C:/apache代替 C:\apache
建議使用絕對(duì)路徑避免混淆。
ServerSignature/ServerTokens
ServerSignature:在頁面產(chǎn)生錯(cuò)誤時(shí)是否出現(xiàn)服務(wù)器版本信息。推薦設(shè)置為Off。
ServerSignature:On

ServerSignature:Off

ServerTokens:配置Http頭部返回的Apache版本信息。6種類型信息內(nèi)容遞增:Prod/Major/Minor/Min/OS/Full,推薦Prod。
ServerSignature Off
ServerTokens Prod
ServerSignature文檔
ServerTokens文檔
ServerRoot
ServerRoot 服務(wù)頂級(jí)目錄樹。
不要在路徑的最后加斜杠/。如果你指定的ServerRoot不是本地磁盤,要確定用互斥指令【Mutex directive】指定一個(gè)本地磁盤,如果基于文件的互斥指令被使用。如果你希望共享在多個(gè)httpd守護(hù)進(jìn)程【daemons】中共享相同的ServerRoot,你至少需要修改PidFile。
Define APACHE24 Apache2.4
Define VERSION_APACHE 2.4.23
Define INSTALL_DIR D:/wamp64
Define APACHE_DIR ${INSTALL_DIR}/bin/apache/apache${VERSION_APACHE}
ServerRoot "${APACHE_DIR}"
互斥(Mutex)
互斥:允許你為多個(gè)不同的互斥對(duì)象設(shè)置互斥機(jī)制【mutex mechanism】和互斥文件目錄,或者修改全局默認(rèn)值。
如果互斥對(duì)象是基于文件的以及默認(rèn)的互斥文件目錄不在本地磁盤或因?yàn)槠渌蚨贿m用,那么取消注釋并改變目錄。
# Mutex default:logs
監(jiān)聽(Listener)
監(jiān)聽:允許你綁定Apache服務(wù)器到指定ip地址和/或端口,用來代替默認(rèn)值。參見<VirtualHost>指令。
修改這個(gè)指令以偵聽下面指定的ip地址,避免Apache服務(wù)器抓取全部綁定的IP地址。
#Listen 12.34.56.78:80
Listen 0.0.0.0:80
Listen [::0]:80
動(dòng)態(tài)對(duì)象/DSO共享支持
Dynamic Shared Object (DSO) Support
為了能夠使用一個(gè)作為DSO創(chuàng)建的模塊【modules】的功能,你需要放置相應(yīng)的【corresponding】LoadModule行在這個(gè)位置,這樣在你使用之前,這些指令就包含在模塊中了。
#
# Example:
# LoadModule foo_module modules/mod_foo.so
#
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
...
...
LoadModule php5_module "${INSTALL_DIR}/bin/php/php5.6.25/php5apache2_4.dll"
<IfModule unixd_module>
如果你希望httpd以不同的用戶或組來運(yùn)行,你必須最初以root運(yùn)行httpd,它將切換過去
User/Group:運(yùn)行httpd的用戶名/組 的名字。對(duì)于大多數(shù)系統(tǒng)服務(wù)來講,為運(yùn)行httpd創(chuàng)建一個(gè)專用用戶和組是一個(gè)好的實(shí)踐方法。
User daemon
Group daemon
Main服務(wù)配置
本節(jié)的指令集用來設(shè)置`main`服務(wù)器所使用的值,服務(wù)器響應(yīng)任何沒有被<VirtualHost>定義所處理的請(qǐng)求。
這些值也為任何稍后你可能在下面定義的<VirtualHost>容器【containers】提供默認(rèn)值。
所有這些指令可能顯示在<VirtualHost>容器里面,在這種情況下【case】這些默認(rèn)設(shè)置將被覆蓋。
ServerAdmin:你的郵箱地址,當(dāng)發(fā)生問題時(shí)服務(wù)器將向此郵箱發(fā)送郵件。這個(gè)郵箱顯示在一些服務(wù)器生成的頁面,例如錯(cuò)誤文檔。如:admin@your-domain.com。
ServerAdmin wampserver@wampserver.invalid
ServerName:提供用于識(shí)別自己的名字和端口。名字和端口通常由服務(wù)器自動(dòng)定義,但是我們建議你明確地指定它以避免啟動(dòng)過程中產(chǎn)生問題。
如果你的主機(jī)沒有注冊(cè)DNS域名,在這里輸入DNS的IP地址。
ServerName localhost:80
文件系統(tǒng)訪問權(quán)限:Apache允許對(duì)不同目錄有不同的訪問控制功能。
默認(rèn)配置,拒絕所有對(duì)你服務(wù)器文件系統(tǒng)的訪問:
<Directory />
AllowOverride none
Require all denied
</Directory>
也可以單獨(dú)制定目錄訪問控制功能,home/blog目錄:
<Directory "home/blog"/>
Opinions FollowSymlinks
AllowOverride None
</Directory>
HostnameLookups:啟用對(duì)客戶端IP的DNS查找。
語法: HostnameLookups on|off|double。
double:指定進(jìn)行一次雙向DNS。也就是說在一次反向查詢之后,再對(duì)返回的結(jié)果進(jìn)行一次forward查詢。在forward查詢結(jié)果中至少應(yīng)該有一個(gè)ip地址與初始的地址相符
默認(rèn)值設(shè)置為off是為了那些不需要進(jìn)行反向查詢的站點(diǎn)節(jié)約網(wǎng)絡(luò)帶寬考慮的。
HostnameLookups Off
**DocumentRoot **:網(wǎng)絡(luò)上可以觀看的主文檔樹的目錄,默認(rèn)為所有請(qǐng)求都從這個(gè)目錄獲取,但是可以使用符號(hào)連接(symbolic link)和別名指定其它到位置。
語法: DocumentRoot 目錄路徑
DocumentRoot "${INSTALL_DIR}/www"
例子:
<Directory "${INSTALL_DIR}/www/">
Options +Indexes +FollowSymLinks +Multiviews
AllowOverride all
# onlineoffline tag - don't remove
Require local
</Directory>
- 指令選項(xiàng)可以用
None,All,也可以將下列指令任意組合:Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews,注意"MultiViews"必須準(zhǔn)確命名-----"Options All"將不會(huì)生效。
選項(xiàng)指令復(fù)雜且重要。請(qǐng)參閱官方文檔。 -
AllowOverride控制的指令可能包含在.htaccess文件中。它可以是All、None、或以下關(guān)鍵字的任意組合:AllowOverride FileInfo AuthConfig Limit
參考: