对于中小企业来说建立自己的网站,对外展示自己的页面是最平常不过的事情了。目前最流行的建立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更加顺手。
Apache与IIS的优劣对比点点评分析_服务器
时间: 2024-12-03 20:26:34
Apache与IIS的优劣对比点点评分析_服务器的相关文章
使用apache和IIS,共用80端口的一个解决方案_服务器
将apache设为使用80端口,IIS使用其它端口,比如81,然后将apache作为IIS的代理. 在httpd.conf里面,取消下面四行的注释: LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_connect_module modules/mod_proxy_connect.so LoadModule proxy_http_module modules/mod_proxy_http.so LoadModule pro
Apache与IIS共用端口的解决方法集_服务器
经过一阵稳定性的考虑后,公司的网站决定采用IIS作管理平台,Apache做访问平台,但服务器对外开放的端口数实在太少,如何使Apache和IIS共用一个端口,而两者兼顾?Google一下,找到以下方法,开始实践.... 为调试程序,本机安装iis与apache,无法同时使用80端口,现给出解决方法: 方法一:原文地址 IIS5,多IP下共存,IIS为192.168.0.1,apache为192.168.0.2 c:\Inetpub\Adminscriptscscript adsutil.vbs
iis Web站点崩溃的原因分析_服务器
有许多种原因可能导致Web站点无法正常工作,这使得系统地检查所有问题变得很困难.下面将集中分析总结导致Web站点崩溃的最常见的问题.如果可以解决这些常规问题,那么也将有能力对付出现的一些意外情况. 磁盘已满 导致系统无法正常运行的最可能的原因是磁盘已满.一个好的网络管理员会密切关注磁盘的使用情况,隔一定的时间,就需要将磁盘上的一些负载转存到备份存储介质中(例如磁带). 日志文件会很快用光所有的磁盘空间.Web服务器的日志文件.SQL*Net的日志文件.JDBC日志文件,以及应用程序服务器日志
IIS下论坛静态化分析_服务器
这两天研究Discuz 4.1,并成功地将原来一个Discuz 2.5的论坛升级到了最新版本,个人感觉这个论坛实在不错. 我的Discuz 4.1是在Apache+Php+Mysql下运行的,并开启了Url Rewrite,之后我发现整个论坛的大部分页面都可以使用html的静态地址方式来访问,感觉真不错,Apache实在太强大了,难怪现在用Apache的站点那么多. IIS下能否也实现这种静态化功能呢,我知道Helicon开发了一个叫ISAPI_Rewrite的ISAPI程序,可以在IIS下实现
IIS 6 的 PHP 最佳配置方法_服务器
作者:冷漠 虽然 LAMP 组合很不错,但是如果想要架设一台同时支持 PHP.ASP.ASP.NET.JSP.Perl 的 Web 虚拟主机服务器,还是用 Windows 2003 的 IIS 6 最好.网上有很多介绍在 IIS 6 上配置 PHP 的文章,但是那些方法不是性能不好,就是升级麻烦.下面的方法可以让你在第一次配置好后,能够非常方便的进行升级. 这里所说的升级,是指从某个 php4 版本升级到另一个 php4 版本,或者从某个 php5 版本升级到另一个 php5 版本,而不是指从
redhat下apache+php+mysql+imap+ldap+jdk+tomcat的安装_服务器
以上软件可以在此用FTP下载: address:202.104.157.58 name:hello password:hello 一.下面以/home/hailang/ 目录为例: tar zxvf apache_1.3.19.tar.gz tar zxvf imap-2000c.tar.Z tar zxvf mod_jserv.so..so tar zxvf mysql-3.23.33-pc-linux-gnu-i6862.tar.gz tar zxvf openldap-2
PHP+Apache在Windows 9x下的安装和配置_服务器
本教程的目的是向你展示如何用"Apache和Windows"的组合来开发PHP程序. 教程中如未指明具体版本,则PHP为PHP3或PHP4 Beta 2或3,Apache为 1.3.x. 一.安装Apache 首先,你须要一个WEB服务器,我推荐Apache.先到htp://www.apache.org/dist看看.在这页上有世界范围的Apache镜像站点列表,找到离你最近的那个.Apache软件一般叫作apache_1_3_x.win32.exe.把它当到你机器里,运行它
xampp中apache在windows7下无法启动的解决方法_服务器其它
环境windows 7 32位 下载zip版本的xampp,无法启动apache ,现象是短暂显示了running标志之后就停止了,日志显示WARNING:terminating worker thread 0. 查看日志信息 [notice] Apache/2.2.14 (Win32) DAV/2 mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1 configured -- r
apache五合一程序建立PHP+CGI运行环境_服务器
apache五合一下载http://switch.dl.sourceforge.net/sourceforge/phpdev5/dev5beta3.exe 另外需要本机安装apache四合一http://telia.dl.sourceforge.net/sourceforge/phpdev5/phpdev4_4A.exe 因为在五合一中没有包含perl解释器,需要借用四合一安装包中的perl. 估计下一个版本会修正这一点的. instsrv.exe下载:http://smallhome.51.n