Apache優化步驟:
1、先查看apache的運行模式,查看命令:
httpd -l
Compiled in modules:
core.c
prefork.c
http_core.c
mod_so.c
這里可以看到運行模式是prefork模式。
2、修改apache 的httpd.conf 配置
本文是對512M 內存并裝有apache的vps進行優化,請不要跟我說裝nginx就強多了,確實如此,但是你這樣說的話,這篇文章就沒什么意義了,哈哈。那么進入正題吧!
操作系統(linux):CentOS 5.5 32位(并不是我說這個比較好,只是Cents我用得比較熟練)
內存:512M
cpu:1G(1000MHz,vps實際有沒有這個數,很難說)
apache:2.2(建議低版本的,升級到高版本,畢竟舊版有很多問題,且性能也是高版本好點)
運行的主要是PHP程序,其他的不多說了,與本文關系不大。
首先,如題所說,本文所說的優化是針對apache 2.2以上版本,及使用perfork MPM模式的。perfork是apache在linux下默認安裝下的模式,如果使用apache作為服務器的放在,還是使用perfork模式比較好,worker模式下對php某些功能并不支持。如果你使用的是win系統或都沒有使有和perfork,那么下面可以選擇不看或抱著學習的態度看看咯。
以下內容均屬于博主自己的見解,實際測試請根據你的服務器,程序及其他因素按需處理。
一般情況下,我們需要優化apache就是因為apache占用大量的內存,導致vps當機,因為perfork是多進程處理的,每個進程都會點用一定的內存數量。所以限制httpd進程的數量,從而達到優化apache的作用。影響單個httpd進程的內存大小,主要都是加載模塊,至少什么模塊是合適的,我也很難說,因為這個是按由你的需要而定的。網上有些人說,絕大部分都會用不上的模塊列出來,我認為這個是有很大的誤導作用,因為絕大部分人中,也許你就是其中一個。將有用的模塊屏蔽掉,最壞的情況,就是重啟apache出錯,或部分功能無法使用。所以我也不會列出什么最少模塊加載方案什么的。所以,我只會說出一些參考。
apache(perfork)下的模塊加載,并不是模塊加載列表,沒有的模塊并不是屏蔽掉了,只是我也不清楚它的實際作用。
(一)、對于apache2.2,模塊名有cache的一般都是有用的,因為有不少的這類模板都是2.1以上的apache才支持的,所以這類的模塊不會是無緣無緣而存在的。
(二)、很有可能或必用到的模塊有:
代碼如下:
LoadModule auth_basic_module modules/mod_auth_basic.so
新聞熱點
疑難解答