讨论:动态网页的各种技术(100分)

  • 主题发起人 主题发起人 liuge
  • 开始时间 开始时间
L

liuge

Unregistered / Unconfirmed
GUEST, unregistred user!
请各位谈谈vbscript、jscript、ASP、Java Applet、CGI/ISAPI...各自
的优劣,目前那些用的较多...
 
都用的挺多.
不过概念挺混淆,VBS/JS是语言,ASP,CGI/ISAPI是一种技术

JS和VBS是解释性脚本语言:
JS主要用来在客户端实现动态交互,VBS主要用来在服务器端(ASP).
JS通用性好,可以支持NC,IE, VBS只有IE支持.2者功能各有千秋.

ASP在某些程度上可以取代CGI/ISAPI,他是一种脚本代码,镶嵌
在html里面,在server上被解释执行,然后将执行后的结果返回
给浏览器,你看到的只是一个结果,看不到源代码,所以从<font color=red>原理上</font>
说,他应该是很保密的.但是,我之所以说"原理上",是因为只是
M$是这么承诺的,实际上ASP的漏洞数不胜数,我基本已经放弃
ASP了,除非你的站点没有什么重要的东西.

Java Applet是一段保持活动的"伪编译"代码,同样镶嵌在html
里面,但他作为一段小程序,是"激活"的,所以可以随时和server
通讯,并及时返回结果.他的跨平台性最好,几乎可以支持所有的平台.
缺点是每次运行都要把代码下载下来(似乎现在可以不用了?),而且
比较占用带宽,在目前中国似乎应用还不广.

顺便说说ActiveX(Delphi的ActiveForm属于此类),ActiveX
是M$为了对付Java Applet搞出来的,同样镶嵌在html里面,
和java不同,他只需第一次运行时下载到用户的硬盘上,以后
就直接在本地机器上执行,速度当然可以,但也带来了安全问题.
于是M$搞了个数字认证,没有被认证的ActiveX被浏览器标记为
"不安全的".ActiveX有一个很大的缺点是升级很麻烦,另外,
代码也比java applet庞大,用户往往等不及下载. 这个技术
在目前的internet上似乎应用最少.

CGI/ISAPI,是一段真正的编译的二进制代码,当然,这意味着
平台的不兼容性.他被放置在server的一个可执行的目录下面,
当html里面通过url或表单的提交调用CGI/ISAPI时,他被执行,
然后将结果返回给浏览器. 他的技术应该是比较成熟的,因为
应用很长时间了,也比较保密. 缺点时被动执行,基本没有什么
交互性,不过速度应该比解释语言快.尤其是ISAPI还解决了
传统CGI的多进程的负担,应该是不错的,我现在基本用他.

其他的还有什么PHP,最近也比较热门,这是一种介于CGI和
ASP之间的一种语言,基于C语言,可以把他叫做C Script.



 
js/vs 脚本,功能弱
java applete 通用性强,效率低
ASP 通用性差,安全性差,效率一般,方便
isapi 通用性差,效率高//NT
CGI 通用性强,效率可以
 
原先对JavaScript了解的较多,自然亲切!
JavaScript还的配用CGI.
Java比JScript功能更强了。
以上这几种都存在安全问题。CGI<JS<Java,即CGI最弱,Java稍强。
大家不会忘记前些日子的Java的病毒吧?!
 
CJ说的是真的吗?
我对ASP可是抱着很大的希望的呀,唉
 
呵呵, 其实asp的效率就算还可以吧:-)
用的是isapi来执行的.
关键象perl, asp, php, javascript这些script语言来写, 调试都比较方便:-)
 
>>用的是isapi来执行的
不管用什么执行,总归是解释执行,看看现在一些用asp做的站点,一旦
人气上来了,速度就跟不上了,www.chinasp.com就是一个例子.

而且安全性极差! 国内某个非常著名的搜索引擎以前就是IIS+ASP做的,存在
明显漏洞,我曾经在网上用RDS直接打开他的数据库,所有用户的信息
一览无余,当时我只要输入一个"DELETE * FROM xxx"...嘿嘿,可是不敢啊!
现在不知道他们改进了没有,懒的去看了.

再重申一次:除非你没有什么重要的数据,否则最好不要用ASP.
 
感谢几位的热情回答,尤其CAKK的详细。

最开始是在Delphi里见到CGI/ISAPI的方式,局域网里试了试,感觉不错,除接口
部分,另外的与传统编程没什么区别。ISAPI占用较少的资源,但不好调试;

最近才知道还有js/vs java applete ASP ,稍有了解。

另外请各位介绍哪里有关于HTML,ASP,VS,JS,Java 啊Applete的资料。
 
HTML,ASP,VS,JS相关的都可以在www.chinasp.com里面找到.
 
CaKK:实际上ASP的安全虽然差,不过也没到哪个地步吧:-)
 
CJ: 不是吗? 比如这个论坛...<font color=red>理论上</font>我可以得到每个人的密码,只要我想...

我手里有一大把"有漏洞的用ASP做的站点",而且我也不断给他们的webmaster
写信提醒,可惜很多没有反应.
比如国庆50周年网站http://www.prc50.gov.cn,这么重要的站点居然
居然也有明显ASP漏洞,我给他们写信说了,并且说一旦被台湾黑客给黑
了就太丢人了,他们后来回信致谢,不知道改了没有(当然,那上面其实没有
什么重要数据,但毕竟是国家的门面,被黑了总不好).

目前用ASP,装上sp5基本可以解决漏洞,可是现在不是又出了一个sp6吗?
谁知道是不是因为又发现了ASP的什么bug? 装上补丁当然可以解决问题,
但是当补丁还没有公开下载的时候你被黑了找谁去? 如果你有重要数据呢?

总之象ASP这样的脚本,总会有漏洞看到代码的,只是时间早晚的问题.而
编译的cgi/isapi则安全多了.
 
to cakk:asp真的这么可怕吗?我才刚到门槛啊!可是如果用cgi能做出象本论坛
这样的好东东吗?
 
用ISAPI当然可以写本论坛,而且效率更高.

等着吧,yysun用VB写delphi论坛,我要用Delphi写VB论坛.
 
我比较倾向于CGI,效率比ASP实在高得多;国外的大型站点(例如YAHOO)好象就是
用CGI。
如果开发的网页比较简单,用JS最方便了。
 
vbscript、javascript、Java Applet、DHTML、ActiveX 等是客户端的技术;
ASP、php、CGI (perl)、ISAPI 等是服务器端的技术。

在下愚见:

- 客户端只用 Cascade Style Sheet,这样对客户浏览器的要求最低。
- 服务器端的技术的评价:

用 perl 写 CGI 太麻烦、效率又低
用 C 写 CGI 太麻烦、又何必呢?
用 Delphi 写 ISAPI 可以一试,但是将被限制在 IIS 上 :(
用 ASP + COM 很方便,但是漏洞太多。

建议大家研究一下最新的技术:
JSP + Java Bean / Java Servlet 的组合。( http://java.sun.com )

我认为 JSP (Java Server Page) 比 ASP 好。
 
Java Servlet前几天刚看过一片介绍的文章,好像还不错.
 
我几天前看过关于ASP的文章,写的还不错。这些文章的地址为:
ftp://202.112.14.181/pub/asp/ 请访问。
 
近来好象有一种叫php的东东,不知怎么样?
好象这玩意可以跨平台,也是类似ASP的解释执行方式
 
to wrench: 我不是已经说了吗,php非常类似ASP,只不过它的语言是C语言,
所以功能十分强大,能够完成以前ASP不能而只能通过CGI来完成
的事情.(比如2进制文件读写,画图等).而且数据库功能也很强大.

从php4.0开始,php.exe可以以CGI或ISAPI的方式执行,而且支持
类似ASP里面的session,但还是不支持application.

php的安全性还可以,至少到目前为止还没有发现什么漏洞.

php其实主要是给UNIX like的系统开发的,在unix上面运行效率
最好,在NT上面也可以,不过因为我还没看到在NT上有什么大型的应用,
所以不好说.

php+mySQL是最佳组合.

.....

还有什么要问的吗?口都说干了.... :-)
 
我也曾以为asp是个好东西,但一看是解释型的,执行时的速度也不好,就不用了。
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部