真人做受120分钟免费看,亚洲av成人网,国产精品久久久久久久牛牛,99e热国产最新地址获取

長(cháng)治網(wǎng)站建設
Apache2.2安全配置和性能優(yōu)化



Apache2.2安全配置和性能優(yōu)化


一、 Apache禁止目錄遍歷


將Options Indexes FollowSymLinks中的Indexes 去掉,就可以禁止 Apache 顯示該目錄結構。Indexes 的作用就是當該目錄下沒(méi)有 index.html文件時(shí),就顯示目錄結構。




二、 apache 隱藏版本信息
1.隱藏Apache版本信息


測試默認 apache 的狀態(tài)信息
[root@1314it conf]# curl -Is localhost
HTTP/1.1 200 OK
Date: Tue, 16 Nov 2010 04:20:15 GMT
Server: Apache/2.2.3 (CentOS) DAV/2 PHP/5.1.6 mod_perl/2.0.4 Perl/v5.8.8
X-Powered-By: PHP/5.1.6
Connection: close
Content-Type: text/html; charset=GB2312


[root@1314it conf]#


修改主配置文件 httpd.conf
ServerSignature Off
ServerTokens Prod


重啟 apache 測試


測試隱藏版本號后 apache 的狀態(tài)信息
[root@1314it conf]# curl -Is localhost
HTTP/1.1 200 OK
Date: Tue, 16 Nov 2010 04:21:41 GMT
Server: Apache
X-Powered-By: PHP/5.1.6
Connection: close
Content-Type: text/html; charset=GB2312


[root@1314it conf]#
三、 apache隱藏banner(版本),關(guān)閉trace
Apache Banner的隱藏方法, 
修改httpd.conf文件,設置以下選項:
ServerTokens ProductOnly
ServerSignature Off
關(guān)閉trace-method
TraceEnable off
另外apache可以在編譯的時(shí)候,故意混淆banner信息,達到隱藏的目的


四、 apache并發(fā)數調整
在/usr/local/etc/apache22/httpd.conf中加載MPM配置(去掉前面的注釋?zhuān)?br /> # Server-pool management (MPM specific)
Include etc/apache22/extra/httpd-mpm.conf
可見(jiàn)的MPM配置在/usr/local/etc/apache22/extra/httpd-mpm.conf,但里面根據httpd的工作模式分了很多塊,哪一部才是當前httpd的工作模式呢?可通過(guò)執行 apachectl -l 來(lái)查看:
Compiled in modules:
              core.c
              prefork.c
              http_core.c
              mod_so.c
看到prefork 字眼,因此可見(jiàn)當前httpd應該是工作在prefork模式,prefork模式的默認配置是:
<IfModule mpm_prefork_module>
   StartServers    5
   MinSpareServers  5
   MaxSpareServers  10
   MaxClients     150
   MaxRequestsPerChild   0
</IfModule>
2.要加到多少?
連接數理論上當然是支持越大越好,但要在服務(wù)器的能力范圍內,這跟服務(wù)器的CPU、內存、帶寬等都有關(guān)系。
查看當前的連接數可以用:
ps aux | grep httpd | wc -l
或:
pgrep httpd|wc -l
計算httpd占用內存的平均數:
ps aux|grep -v grep|awk '/httpd/{sum+=;n++};END{print sum/n}'
由于基本都是靜態(tài)頁(yè)面,CPU消耗很低,每進(jìn)程占用內存也不算多,大約200K。
服務(wù)器內存有2G,除去常規啟動(dòng)的服務(wù)大約需要500M(保守估計),還剩1.5G可用,那么理論上可以支持1.5*1024*1024*1024/200000 = 8053.06368
約8K個(gè)進(jìn)程,支持2W人同時(shí)訪(fǎng)問(wèn)應該是沒(méi)有問(wèn)題的(能保證其中8K的人訪(fǎng)問(wèn)很快,其他的可能需要等待1、2秒才能連上,而一旦連上就會(huì )很流暢)
五、 控制最大連接數的MaxClients ,因此可以嘗試配置為:
<IfModule mpm_prefork_module>
                StartServers                      5
                MinSpareServers                   5
                MaxSpareServers                  10
                ServerLimit                    5500
                MaxClients                     5000
                MaxRequestsPerChild               100
</IfModule>
注意,MaxClients默認最大為250,若要超過(guò)這個(gè)值就要顯式設置ServerLimit,且ServerLimit要放在MaxClients之前,值要不小于MaxClients,不然重啟httpd時(shí)會(huì )有提示。
重啟httpd后,通過(guò)反復執行pgrep httpd|wc -l 來(lái)觀(guān)察連接數,可以看到連接數在達到MaxClients的設值后不再增加,但此時(shí)訪(fǎng)問(wèn)網(wǎng)站也很流暢,那就不用貪心再設置更高的值了,不然以后如果網(wǎng)站訪(fǎng) 問(wèn)突增不小心就會(huì )耗光服務(wù)器內存,可根據以后訪(fǎng)問(wèn)壓力趨勢及內存的占用變化再逐漸調整,直到找到一個(gè)最優(yōu)的設置值。
(MaxRequestsPerChild不能設置為0,可能會(huì )因內存泄露導致服務(wù)器崩潰)
更佳最大值計算的公式:
apache_max_process_with_good_perfermance < (total_hardware_memory / apache_memory_per_process ) * 2
apache_max_process = apache_max_process_with_good_perfermance * 1.5


六、 Apache日志切割
方法1、使用 cronolog 為每一天建立一個(gè)新的日志
安裝cronolog程序
主配置文件中的使用方法
ErrorLog "|bin/cronolog logs/error_%Y%m%d.log"
CustomLog "|bin/cronolog logs/access_%Y%m%d.log" combined
虛擬主機配置文件中的使用方法
ServerAdmin webmaster@localhost
DocumentRoot "E:/htdocs"
ServerName localhost
ErrorLog "|bin/cronolog logs/localhost/error_%Y%m%d.log"
CustomLog "|bin/cronolog logs/localhost/access_%Y%m%d.log" combined
方法2使用 rotatelogs 每隔一天記錄一個(gè)日志
主配置文件中的使用方法


ErrorLog "|bin/rotatelogs -l logs/error_%Y%m%d.log 86400"
CustomLog "|bin/rotatelogs -l logs/access_%Y%m%d.log 86400" combined
虛擬主機配置文件中的使用方法


ServerAdmin webmaster@localhost
DocumentRoot "E:/htdocs"
ServerName localhost
ErrorLog "|bin/rotatelogs -l logs/localhost/error_%Y%m%d.log 86400"
CustomLog "|bin/rotatelogs -l logs/localhost/access_%Y%m%d.log 86400" combined


注意:
這兩個(gè)管道日志文件程序還有一點(diǎn)不同之處是使用 cronolog 時(shí)如果日志是放在某個(gè)不存在的路徑則會(huì )自動(dòng)創(chuàng )建目錄,而使用 rotatelogs 時(shí)不能自動(dòng)創(chuàng )建,這一點(diǎn)要特別注意
七、 apache對頁(yè)面進(jìn)行壓縮和頁(yè)面緩存來(lái)提升性能


Apache來(lái)對頁(yè)面進(jìn)行壓縮和頁(yè)面緩存來(lái)提升性能.為了實(shí)現這些功能需要三個(gè)模塊mod_deflate、mod_expires和mod_headers


要實(shí)現這些東西的配置先在httpd.conf文件下找到下面三個(gè)地方
文本代碼
#LoadModule deflate_module   modules/mod_deflate.so   
#LoadModule expires_module   modules/mod_expires.so   
#LoadModule headers_module   modules/mod_headers.so  
    同時(shí)去掉前面的“#”,這些模塊功能已經(jīng)開(kāi)啟了,下面我們在配置GZIP和Expires了。配置GZIP和Expires也很容易,我們只需要在httpd.conf 配置文件中啟用并進(jìn)行相關(guān)的配置即可,配置如下:
文本代碼
<IfModule   mod_expires.c>    
 ExpiresActive   on   
 ExpiresDefault "now plus 1   day"  
 ExpiresByType image/x-icon "access plus 10   year"  
 ExpiresByType image/gif "access plus 1   month"  
 ExpiresByType image/jpeg "access plus 1   month"  
 ExpiresByType text/css "now plus 1   month"  
 ExpiresByType text/javascript "now plus 1   month"  
 ExpiresByType application/x-javascript "now plus 1   month"  
 ExpiresByType text/html "now plus 5   minutes"  
 ExpiresByType text/plain "now plus 1   month"  
 ExpiresByType image/js "access plus 1   month"  
 ExpiresByType application/x-shockwave-flash "access plus 1   week"  
 <FilesMatch   ".(gif|jpe?g|png)$">   
  Header set   Cache-Control "max-age=604800"  
  Header unset   ETag   
 </FilesMatch>   
</IfModule>   
FileETag   none   
<ifmodule   mod_deflate.c>   
 DeflateCompressionLevel   9  
 AddOutputFilterByType DEFLATE text/html text/plain text/xml   application/x-httpd-jsp   
 AddOutputFilter DEFLATE js   css   
</ifmodule>   
<Location   "/">   
 SetOutputFilter   DEFLATE   
 BrowserMatch ^Mozilla/4   gzip-only-text/html   
 BrowserMatch ^Mozilla/4.0[678]   no-gzip   
 BrowserMatch bMSIE !no-gzip   !gzip-only-text/html   
 SetEnvIfNoCase Request_URI   .(?:gif|jpe?g|png)$ no-gzip dont-vary   
 Header append Vary   User-Agent   env=!dont-vary   
</Location>  




八、 修改Apache配置文件開(kāi)啟gzip壓縮傳輸


第1步
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
  打開(kāi)httpd.conf后,先將上面兩行配置前面的#號去掉,這樣apache就會(huì )啟用這兩個(gè)模塊,其中mod_deflate是壓縮模塊,就是對要傳輸到客戶(hù)端的代碼進(jìn)行g(shù)zip壓縮;mod_headers模塊的作用是告訴瀏覽器頁(yè)面使用了gzip壓縮,如果不開(kāi)啟mod_headers那么瀏覽器就會(huì )對gzip壓縮過(guò)的頁(yè)面進(jìn)行下載,而無(wú)法正常顯示。
第2步
  在httpd.conf中加入以下代碼,可以加到任何空白地方,不了解apache的朋友,如果擔心加錯地方,就放到http.conf文件的最后一行,如果是虛擬服務(wù)器可以寫(xiě).htaccess文件里面,然后放在項目下即可。
<IfModule mod_deflate.c>
    SetOutputFilter DEFLATE    #必須的,就像一個(gè)開(kāi)關(guān)一樣,告訴apache對傳輸到瀏覽器的內容進(jìn)行壓縮


    SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary #設置不對后綴gif,jpg,jpeg,png的圖片文件進(jìn)行壓縮
    SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary #同上,就是設置不對exe,tgz,gz。。。的文件進(jìn)行壓縮
    SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary


    AddOutputFilterByType DEFLATE text/* #設置對文件是文本的內容進(jìn)行壓縮,例如text/html  text/css  text/plain等
    AddOutputFilterByType DEFLATE application/ms* application/vnd* application/postscript application/javascript application/x-javascript #這段代碼你只需要了解application/javascript application/x-javascript這段就可以了,這段的意思是對javascript文件進(jìn)行壓縮
    AddOutputFilterByType DEFLATE application/x-httpd-php application/x-httpd-fastphp #這段是告訴apache對php類(lèi)型的文件進(jìn)行壓縮


    BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.x 有一些問(wèn)題,所以只壓縮文件類(lèi)型是text/html的
    BrowserMatch ^Mozilla/4.0[678] no-gzip # Netscape 4.06-4.08 有更多的問(wèn)題,所以不開(kāi)啟壓縮
    BrowserMatch bMSIE !no-gzip !gzip-only-text/html # IE瀏覽器會(huì )偽裝成 Netscape ,但是事實(shí)上它沒(méi)有問(wèn)題
</IfModule>

ServerTokens ProductOnly
ServerSignature Off
TraceEnable off


<IfModule mod_deflate.c>
    SetOutputFilter DEFLATE
    SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary
    AddOutputFilterByType DEFLATE text/*
    AddOutputFilterByType DEFLATE application/ms* application/vnd* application/postscript application/javascript application/x-javascript
    AddOutputFilterByType DEFLATE application/x-httpd-php application/x-httpd-fastphp
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4.0[678] no-gzip
    BrowserMatch bMSIE !no-gzip !gzip-only-text/html
</IfModule>

2006-2014 IT0355.com 山西中聯(lián)科創(chuàng )科技有限公司. All Rights Reserved.
電話(huà):0355-3728808 傳真:0355-3728808
ICP備案號:晉ICP備06003721號本站已通過(guò)國際W3C認證
關(guān)鍵字:中聯(lián)科創(chuàng ),長(cháng)治網(wǎng)站建設,長(cháng)治網(wǎng)站推廣,長(cháng)治網(wǎng)絡(luò )工程,長(cháng)治軟件開(kāi)發(fā),山西網(wǎng)站建設,山西軟件開(kāi)發(fā) 長(cháng)治五金網(wǎng)

            

丁香亚洲| 夜夜CB久久| 欧美激情综合网| 品亚洲AV无码| 玖玖爱| 欧美一道| 久久电影中字一区二区三区| 亚洲av欧美av久久久爽色| 久久噜噜噜久久| 中国女人内谢69XXXX视频| 国产精品国产自产拍高清AV| 涩涩网站在线观看| 亚洲丝袜一区| 日日摸日日碰夜夜爽亚洲| 欧美久久精品中文字幕一区| 国产精品久久久久久久粉嫩| 日韩人妻无码一区二区三区综合部| 国语自产偷拍| 久久亚洲精品国产亚洲老地址| 五月丁香网站免费看视频| 日韩欧美国产精品va| 久久不卡人妻视频| 久久精品2| 综合色图17p| 亚洲天堂成人在线观看| 99久久人人| 内射骚妇人妻影院| 五月丁香欧美综合久久久久| 古田县| 一区二区不卡| 亚洲人成 777| 日本久久99| 亚洲无线视频免费观看| 综合色 色鬼8| 婷婷五月天激情综合网| 久久人人爽人人爽人人片亞洲| 大香蕉97| av天堂久久| 久久99精品久久久久久国产| 青青青国产精品一区二区| 日本三级电影大全中文字幕|