首先我們來談談老朋友Apache,Apache HTTP Server(簡稱Apache)是世界使用排名第一的Web伺服器軟體,音譯為阿帕奇,是Apache軟體基金會的一個開放原始碼Web伺服器,可以運行幾乎所有的電腦平台,其次開放的API接口,任何組織和個人都可以在它上面擴展和增加各種需要功能,達到為自己量身定制的功能。
再次是因為老,所有相關文件很齊全,甚至在windows平台很多愛好者都為它開發了各種圖形界面,連菜鳥也能入手Apache。因為如此它迅速佔領了70%的web伺服器市場。
現在咱們說說Nginx,Nginx ("engine x") 是一個高效能的 HTTP 和 反向代理伺服器,也是一個 IMAP/POP3/SMTP 代理伺服器。 (推薦學習:PHP程式設計從入門到精通)
Nginx 是由 Igor Sysoev 為俄羅斯訪問量第二的 Rambler.ru 網站開發的。 其次它和Apache一樣是開源的,BSD-like 協定下發行。它最強勁也最具競爭性為其高性能和反向代理,這兩項在該領域獨領風騷。
在網路初期,網站大小不是很大,訪問量都很輕,一個網站的訪問量一天最多就幾萬IP,這個時候Apache完全可以滿足需要,人們更多的是為它開發各種模組,像重寫模組,存取控制列表,快取模組等等。
但是隨著網路的快速發展,網站我造訪量以指數成長,大型網站的除了加大硬體投入外,典型的Web伺服器Apache這時候也力不從心了,於是Nginx開始崛起,最初的設計是俄羅斯工程師為大型網站解決高並發設計的。
所以注定了高並發是它永恆的優點。再來就是反向代理,現在大型網站分工詳細,哪些伺服器處理資料流,哪些處理靜態文件,這些誰指揮,一般都是用nginx反向代理到內網伺服器,這樣就起到了負載均衡分流的作用。再次nginx高度模組化的設計,編寫模組相對簡單。
而我們的老朋友Apache比nginx又有什麼優勢呢,很多中小型網站都在用Apache,非常重要的原因是他出現時間較長,穩定,文檔豐富,再次在重寫方面相對nginx更強大,模組超多,基本只要你能想到的,就有人開發過。
面對這些優缺點,作為客戶的我們該如何取捨呢?儘管nginx正在一步步取代Apache,市場份額也在不斷增加,但是做為一個網站管理員,還是需要從以下幾個方面作為出發點來選擇適合自身的web伺服器。
第一、網站並發。如果是中小型網站,建議選用apache;如果大型並發,而且需要反向代理,選擇nginx那是正確的選擇。
第二、如果需要大量用到重寫模組,建議選用Apache。
第三、根據熟悉度。管理員書序Apache,但閱讀開發nginx能力有限,保守用Apache。
第四、系統資源有限,但自身技術很強大,建議用nginx,因為nginx對系統資源暫用極小,同資源下比Apache高了差不多10倍之多。
建議各位在選擇的時候不要一味追求市場選擇或推薦,而應該從實際出發,根據如上的參考意見謹慎選擇適合自己的web伺服器,盲目跟隨只會使後期遭遇更多不必要的麻煩。
以上是php用apache還是nginx的詳細內容。更多資訊請關注PHP中文網其他相關文章!