對於中小企業來說建立自己的網站,對外展示自己的頁面是最平常不過的事情了。目前最流行的建立WWW服務工具就要屬Apache與IIS了。那麼他們之間都有什麼區別呢?到底哪個工具才是最適合我們的呢?今天就來討論下這個問題。
一、免費與收費之爭:
雖然很多用戶都使用IIS建立網站,他是集成於Windows操作系統中的組件。不過要想合法使用IIS就要購買正版Windows操作系統。
反觀Apache,他是完全免費的。不需要支付任何費用就可以免費下載並使用了。
結論——Apache免費,IIS收費,前者占優。
二、穩定性:
接下來要比較的就是穩定性了,WWW服務要隨時運轉正常,一個網站也需要一天24小時,一周七天為公眾開放。所以穩定性是IIS和APACHE比較的重點。
IIS在實際使用中經常出現500錯誤,而且有的時候還會出現莫名其妙的假死現象。用戶需要不定期的重新啟動IIS服務才能保證網站的正常。
Apache在配置上比IIS要復雜,不過一經設置完畢就可以長期的工作了。大型網站都使用APACHE作為自己的WWW服務提供工具。APACHE的所有配置都保存在配置文件中,使用時完全按照配置文件中記錄的信息執行。一般不會發生莫名其妙的假死情況。
小提示:在windows2003系統下使用IIS比用APACHE性能要好。
結論——APACHE穩定,IIS有時假死,前者占優。
三、擴展性:
擴展性是指WWW服務提供工具是否可以應用於多種場合,多種網絡情況,多種操作系統。
IIS只能在微軟公司的windows操作系統下使用,離開了windows他將一事無成。無法移植到其他類型的操作系統中。
APACHE是個多面手,他不僅僅應用於windows,對於unix,linux以及freebsd等多種操作系統來說他都可以勝任工作。而且不同操作系統的配置步驟基本類似,可移植性非常高。
結論——IIS只能在windows下運行,apache應用范圍廣。apache獲勝。
四、安全性:
經常看到某某網站被黑客攻擊或者某某網站被非法用戶上傳病毒的消息,對於為其他人提供服務的站點來說,安全性是最重要的。如果一個網站連自身安全都沒有保證的話,誰願意浏覽和使用呢。
早期的IIS在安全性方面存在著很大的問題,如果使用默認設置的話黑客可以輕松趁虛而入。不過在IIS6中微軟公司對安全方面進行了大幅改進。只要保證操作系統補丁更新及時,就可以將網站安全系數盡可能的提高。特別是IIS6與.net平台相互倚靠,使安全性幾乎完美。
APACHE在安全方面一直做的不錯,因為很多用戶都是在linux下使用apache,所以操作系統的特點使得linux下的apache具有先天的保護傘,安全性自然沒得說。
結論——IIS6以前的版本有安全隱患,IIS6和APACHE一樣安全可靠。IIS6與APACHE打個平手。
五、開放性:
所謂開放性就是指是否開放了程序的源代碼,眾所周知IIS是WINDOWS系統的一部分,所以他的源代碼是沒有開放的。而apache則不同,最早他是為了類unix系統服務的,所以完全對外開放源代碼。任何人都可以分析他的代碼,發現其中的漏洞,並發布補丁來彌補該漏洞。
正因為APACHE的這種開放性,也使其安全性大大提高。
結論——IIS不開放代碼,APACHE開放源代碼。後者獲得勝利。
六、難易性:
一個工具使用的難易程度直接影響其用戶的多少,特別是網頁發布工具。畢竟很多公司希望有自己的網站,但又不希望聘請高薪的網絡管理員來維護。因此必然找上手相對容易的工具來搭建自己的站點。
IIS開起來比較簡單,很容易就可能讓IIS工作,對外發布網站。不過管理員很容易出現錯誤配置和誤操作問題。不過總體說來IIS還是非常容易學的,但要學好他恐怕是件非常困難的事。
APACHE的使用比IIS要難,需要有一定計算機及網絡基礎的人才可以使用。他的配置也不是圖形化的,需要我們通過編輯配置文件來實現。但是單從APACHE的設置上講,只要我們嚴格按照幫助文件進行參數設置的話還是沒有什麼難度的。
結論——IIS容易安裝但難精通,APACHE安裝相對困難,要想精通也不是一件容易的事。IIS略占優勢。
七、編程性:
為了讓網頁更加豐富多采,更加美觀,互動性更好,高手為我們開發了多種組件與控件,那麼這些控件在IIS或APACHE下是否正常運行呢?
APACHE下的Mod Rewrite功能非常強大,而IIS中的ISAPI的Rewrite需要專門開發,一般初學者是不能夠實現的。APACHE可以使用Subversion WebDev以及.htaccess功能,還可以使用ForceType。另外IIS對FastCGI的支持也不是很好,所以一些CGI、PHP程序運行起來速度很慢,遠不如apache。
結論——不同的環境下使用不同的組件,因為選擇IIS還是APACHE由工作環境所決定,這點兩者不分高下。
八、支持語言方面:
由於目前建立網站和論壇的語言多種多樣,例如ASP,PHP,JSP等語言。那麼IIS和APACHE對他們都支持嗎?
IIS對ASP特別是.net運行很穩定,不過對於PHP和JSP就比較麻煩了。PHP需要經過反復配置才能在windows2003上支持。APACHE則能夠很好的支持上面提到的幾種語言,運行ASP,PHP,JSP都沒有任何問題。
結論——APACHE支持語言比較多,IIS支持PHP和JSP時有點麻煩,需要經過一定的配置。APACHE獲勝。
九、待遇方面:
提到待遇方面可能很多讀者會比較納悶,怎麼IIS和APACHE還存在待遇問題呢?其實我們這裡要討論的是網絡管理員的待遇。一個會IIS的網絡管理員與一個會APACHE的網絡管理員,他們的薪水是不一樣的。
APACHE最大的好處就是配置參數多,如果要精通APACHE需要很高的水平。所以同等水平的網絡管理員會APACHE的要比會IIS的待遇更好。
結論——錢多是獲勝的唯一標准,APACHE占優。
總結:
其實今天我們在這裡爭論IIS好還是APACHE好是沒有很大意義的,本文所進行的比較也只是給那些徘徊在網絡管理員路口,不知道學習哪個工具來建立網站的讀者一點參考。只有你對IIS和APACHE有了一個大概的了解之後,才能為自己的未來進行規劃。
總的來說Apache的優點在於在各種開源的WWW服務提供工具中特性最全,支持最廣,相對比較穩定的,而且擴展性豐富。不過正因為要考慮擴展性,性能就肯定不會太高,只能保持一個中等的水平。而IIS6在處理連接及事件性能方面還是很強大的,超過了APACHE。另外安全方面IIS6也有了質的飛躍,彌補了以往IIS漏洞漫天的缺陷。如果你的公司網絡環境不負責,沒有涉及太多的開發的話建議仍然使用IIS6。當然如果是建立在WWW上的開發和調試還是使用APACHE更加順手。
七、編程性:
為了讓網頁更加豐富多采,更加美觀,互動性更好,高手為我們開發了多種組件與控件,那麼這些控件在IIS或APACHE下是否正常運行呢?
APACHE下的Mod Rewrite功能非常強大,而IIS中的ISAPI的Rewrite需要專門開發,一般初學者是不能夠實現的。APACHE可以使用Subversion WebDev以及.htaccess功能,還可以使用ForceType。另外IIS對FastCGI的支持也不是很好,所以一些CGI、PHP程序運行起來速度很慢,遠不如apache。
結論——不同的環境下使用不同的組件,因為選擇IIS還是APACHE由工作環境所決定,這點兩者不分高下。
八、支持語言方面:
由於目前建立網站和論壇的語言多種多樣,例如ASP,PHP,JSP等語言。那麼IIS和APACHE對他們都支持嗎?
IIS對ASP特別是.net運行很穩定,不過對於PHP和JSP就比較麻煩了。PHP需要經過反復配置才能在windows2003上支持。APACHE則能夠很好的支持上面提到的幾種語言,運行ASP,PHP,JSP都沒有任何問題。//本文來自電腦軟硬件應用網www.45it.com
結論——APACHE支持語言比較多,IIS支持PHP和JSP時有點麻煩,需要經過一定的配置。APACHE獲勝。
九、待遇方面:
提到待遇方面可能很多讀者會比較納悶,怎麼IIS和APACHE還存在待遇問題呢?其實我們這裡要討論的是網絡管理員的待遇。一個會IIS的網絡管理員與一個會APACHE的網絡管理員,他們的薪水是不一樣的。
APACHE最大的好處就是配置參數多,如果要精通APACHE需要很高的水平。所以同等水平的網絡管理員會APACHE的要比會IIS的待遇更好。
結論——錢多是獲勝的唯一標准,APACHE占優。
總結:
其實今天我們在這裡爭論IIS好還是APACHE好是沒有很大意義的,本文所進行的比較也只是給那些徘徊在網絡管理員路口,不知道學習哪個工具來建立網站的讀者一點參考。只有你對IIS和APACHE有了一個大概的了解之後,才能為自己的未來進行規劃。
總的來說Apache的優點在於在各種開源的WWW服務提供工具中特性最全,支持最廣,相對比較穩定的,而且擴展性豐富。不過正因為要考慮擴展性,性能就肯定不會太高,只能保持一個中等的水平。而IIS6在處理連接及事件性能方面還是很強大的,超過了APACHE。另外安全方面IIS6也有了質的飛躍,彌補了以往IIS漏洞漫天的缺陷。如果你的公司網絡環境不負責,沒有涉及太多的開發的話建議仍然使用IIS6。當然如果是建立在WWW上的開發和調試還是使用APACHE更加順手。