1、速度问题
ASP是永远也不会像PHP这样快的,每当客户端打开一个ASP网页时,服务器都须将该ASP程序从头到尾重读一遍,并加以编译执行,最后再送出标准的HTML格式文件给客户端,从而影响了运行速度。因为ASP是建立在COM体系结构之上的,当用VBScript写ASP脚本时,实际上实在使用COM的对象,当向用户浏览器发送信息时,它用的是Response对象的write方法,当它访问数据库和文件系统的时候,它用的是其他的COM对象。这些COM对象的使用使运行速度下降。
2、成本问题
传统上网页的交互作用是通过CGI来实现的。CGI程序的伸缩性不很理想,因为它为每一个正在运行的CGI程序开一个独立进程。解决方法就是将经常用来编写CGI程序的语言的解释器编译进你的web服务器(比如mod_perl,JSP)。PHP就可以以这种方式安装,虽然很少有人愿意这样以CGI方式安装它。内嵌的PHP可以具有更高的可伸缩性和扩展性,那么在二次开发的过程中我们的就不用再调整架构,同而节省时间和成本。
3、兼容性思考
说到兼容性问题,那就太多了,从这个范畴来说,PHP可能已先胜出一步了,它赢在开放源代码方面(Open Source),这意味着它背后可能有着不计其数的开发者、更好的资源、更大的文档库等等。由于这些因素, PHP可以在多种操作系统下运行。而ASP对浏览器的兼容性差,可能有的网络操作系统不支持ASP比如火狐和IE浏览同一个asp页面可能造成效果不同。
4、安全性考虑
Asp是微软的产品,运行于IIS;Php是一种开源的网站程序语言运行于Linux 或各种 UNIX 上的 Apache。Apache的安全选项使它比Windows Server操作系统更具安全性,IIS已有很多已知的安全漏洞,且一直在进行修补;相比而言,Apache的安全性可是有目共睹的。
结论
从个人的角度来看,PHP更快、更安全、更易于使用、兼容性更高,甚至更便宜,我非常憎恨的一件事情就是会买到一件不放心的产品,比如当你买了一辆汽车,但由于发动机是坏的,你需要更换他;当你买了一栋房子的时候,你要去修补漏雨的屋顶。
那么ASP就像这些产品一样,当你买了ASP之后,如果你需要加密技术,你就要买ASPEncrypt;当你需要Email管理时,你就要买ServerObjets Qmail;当你需要文件上传时,你还要买Artisans SA-FileUp。