以下是一些關(guān)于apache服務(wù)器配置文件httpd.conf里的一些描述:
1、如何設(shè) 置請求等待時間
在httpd.conf里面設(shè)置:
TimeOut n
其中n為整數(shù),單位是秒。
設(shè)置這個TimeOut適用于三種情況:
2、如何接收一個get請求的總時間
接收一個post和put請求的TCP包之間的時間
TCP包傳輸中的響應(yīng)(ack)時間間隔
3、如何使得apache監(jiān)聽在特定的端口
修改httpd.conf里面關(guān)于Listen的選項,例如:
Listen 8000
是使apache監(jiān)聽在8000端口
而如果要同時指定監(jiān)聽端口和監(jiān)聽地址,可以使用:
Listen 192.170.2.1:80
Listen 192.170.2.5:8000
這樣就使得apache同時監(jiān)聽在192.170.2.1的80端口和192.170.2.5的8000端口。
當然也可以在httpd.conf里面設(shè)置:
Port 80
這樣來實現(xiàn)類似的效果。
4、如何設(shè)置apache的最大空閑進程數(shù)
修改httpd.conf,在里面設(shè)置:
MaxSpareServers n
其中n是一個整數(shù)。這樣當空閑進程超過n的時候,apache主進程會殺掉多余的空閑進程而保持空閑進程在n,節(jié)省了系統(tǒng)資源。如果在一個apache非常繁忙的站點調(diào)節(jié)這個參數(shù)才是必要的,但是在任何時候把這個參數(shù)調(diào)到很大都不是一個好主意。
同時也可以設(shè)置:
MinSpareServers n
來限制最少空閑進程數(shù)目來加快反應(yīng)速度。
5、apache如何設(shè)置啟動時的子服務(wù)進程個數(shù)
在httpd.conf里面設(shè)置:
StartServers 5
這樣啟動apache后就有5個空閑子進程等待接受請求。
也可以參考MinSpareServers和MaxSpareServers設(shè)置。
6、如何在apache中設(shè)置每個連接的最大請求數(shù)
在httpd.conf里面設(shè)置:
MaxKeepAliveRequests 100
這樣就能保證在一個連接中,如果同時請求數(shù)達到100就不再響應(yīng)這個連接的新請求,保證了系統(tǒng)資源不會被某個連接大量占用。但是在實際配置中要求盡量把這個數(shù)值調(diào)高來獲得較高的系統(tǒng)性能。
7、如何在apache中設(shè)置session的持續(xù)時間
在apache1.2以上的版本中,可以在httpd.conf里面設(shè)置:
KeepAlive on
KeepAliveTimeout 15
這樣就能限制每個session的保持時間是15秒。session的使用可以使得很多請求都可以通過同一個tcp連接來發(fā)送,節(jié)約了網(wǎng)絡(luò)資源和系統(tǒng)資源。
8、如何使得apache對客戶端進行域名驗證
可以在httpd.conf里面設(shè)置:
HostnameLookups on|off|double
如果是使用on,那么只有進行一次反查,如果用double,那么進行反查之后還要進行一次正向解析,只有兩次的結(jié)果互相符合才行,而off就是不進行域名驗證。
如果為了安全,建議使用double;為了加快訪問速度,建議使用off。
9、如何使得apache只監(jiān)聽在特定的ip
修改httpd.conf,在里面使用
BindAddress 192.168.0.1
這樣就能使得apache只監(jiān)聽外界對192.168.0.1的http請求。如果使用:
BindAddress *
就表明apache監(jiān)聽所有網(wǎng)絡(luò)接口上的http請求。
當然用防火墻也可以實現(xiàn)。
10、apache中如何限制http請求的消息主體的大小
在httpd.conf里面設(shè)置:
LimitRequestBody n
n是整數(shù),單位是byte。
cgi腳本一般把表單里面內(nèi)容作為消息的主體提交給服務(wù)器處理,所以現(xiàn)在消息主體的大小在使用cgi的時候很有用。比如使用cgi來上傳文件,如果有設(shè)置:
LimitRequestBody 102400
那么上傳文件超過100k的時候就會報錯。
11、如何修改apache的文檔根目錄
修改httpd.conf里面的DocumentRoot選項到指定的目錄,比如:
DocumentRoot /www/htdocs
這樣http://localhost/index.html就是對應(yīng)/www/htdocs/index.html
12、如何修改apache的最大連接數(shù)
在httpd.conf中設(shè)置:
MaxClients n
n是整數(shù),表示最大連接數(shù),取值范圍在1和256之間,如果要讓apache支持更多的連接數(shù),那么需要修改源碼中的httpd.h文件,把定義的HARD_SERVER_LIMIT值改大然后再編譯。
13、如何使每個用戶有獨立的cgi-bin目錄
有兩種可選擇的方法:
(1)在Apache配置文件里面關(guān)于public_html的設(shè)置后面加入下面的屬性:
ScriptAliasMatch ^/~([^/]*)/cgi-bin/(.*) /home/$1/cgi-bin/$2
(2)在Apache配置文件里面關(guān)于public_html的設(shè)置里面加入下面的屬性:
<Directory /home/*/public_html/cgi-bin>
Options ExecCGI
SetHandler cgi-script
</Directory>
14、如何調(diào)整Apache的最大進程數(shù)
Apache允許為請求開的最大進程數(shù)是256,MaxClients的限制是256.如果用戶多了,用戶就只能看到Waiting for reply....然后等到下一個可用進程的出現(xiàn)。這個最大數(shù),是Apache的程序決定的--它的NT版可以有1024,但Unix版只有256,你可以在src/include/httpd.h中看到:
#ifndef HARD_SERVER_LIMIT
#ifdef WIN32
#define HARD_SERVER_LIMIT 1024
#else
#define HARD_SERVER_LIMIT 256
#endif
#endif
你可以把它調(diào)到1024,然后再編譯你的系統(tǒng)。
15、如何屏蔽來自某個Internet地址的用戶訪問Apache服務(wù)器
可以使用deny和allow來限制訪問,比如要禁止202.202.202.xx網(wǎng)絡(luò)的用戶訪問:
<Directory /www/htdocs>
order deny,allow
deny from 202.202.202.0/24
</Directory>
16、如何在日志里面記錄apache瀏覽器和引用信息
你需要把mod_log_config編譯到你的Apache服務(wù)器中,然后使用下面類似的配置:
CustomLog logs/access_log "%h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i""
17、如何修改Apache返回的頭部信息
問題分析:當客戶端連接到Apache服務(wù)器的時候,Apache一般會返回服務(wù)器版本、非缺省模塊等信息,例如:
Server: Apache/1.3.26 (Unix) mod_perl/1.26
解決:
你可以在Apache的配置文件里面作如下設(shè)置讓它返回的關(guān)于服務(wù)器的信息減少到最少:
ServerTokens Prod
注意:
這樣設(shè)置以后Apache還會返回一定的服務(wù)器信息,比如:
Server: Apache
但是這個不會對服務(wù)器安全產(chǎn)生太多的影響,因為很多掃描軟件是掃描的時候是不顧你服務(wù)器返回的頭部信息的。你如果想把服務(wù)器返回的相關(guān)信息變成:
Server: It iS a nOnE-aPaCHe Server
那么你就要去修改源碼了。
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。