动静态网页区别
静态网页:
静态网页是标准的HTML文件,它的文件扩展名是.htm或.html,可以包含文本、图像、声音、FLASH动画、客户端脚本和ActiveX控件及JAVA小程序等。尽管在这种网页上使用这些对象后可以使网页动感十足,但是,这种网页不包含在服务器端运行的任何脚本,网页上的每一行代码都是由网页设计人员预先编写好后,放置到Web服务器上的,在发送到客户端的浏览器上后不再发生任何变化,因此称其为静态网页。静态网页有时也被称为平面页。静态网页的网址形式通常为htm(超文本标记语言)结尾 ,还有就是以超文本标记语言(.htm、.html)、.shtml、.xml(可扩展标记语言)等为后缀的。在超文本标记语言格式的网页上,也可以出现各种动态的效果,如.GIF格式的动画、FLASH、滚动字幕等,这些“动态效果”只是视觉上的,与下面将要介绍的动态网页是不同的概念。静态网页面通常是超文本标记语言文档存储为文件在文件系统里头,并且可以通过HTTP访问网络服务器。
静态网页是相对于动态网页而言,是指没有后台数据库、不含程序和不可交互的网页。你编的是什么它显示的就是什么、不会有任何改变。静态网页相对更新起来比较麻烦,适用于一般更新较少的展示型网站。
我们将静态网页的特点简要归纳如下:
(1)静态网页每个网页都有一个固定的URL,且网页URL以.htm、.html、.shtml等常见形式为后缀,而不含有“?”;
(2)网页内容一经发布到网站服务器上,无论是否有用户访问,每个静态网页的内容都是保存在网站服务器上的,也就是说,静态网页是实实在在保存在服务器上的文件,每个网页都是一个独立的文件;
(3)静态网页的内容相对稳定,因此容易被搜索引擎检索;
(4)静态网页没有数据库的支持,在网站制作和维护方面工作量较大,因此当网站信息量很大时完全依靠静态网页制作方式比较困难;
(5)静态网页的交互性较差,在功能方面有较大的限制;
(6)静态网页运行数据快。
静态网页是相对于动态网页而言,是指没有后台数据库、不含程序和不可交互的网页。你编的是什么它显示的就是什么、不会有任何改变。静态网页相对更新起来比较麻烦,适用于一般更新较少的展示型网站。
动态网页:
与静态网页相对应的,能与后台数据库进行交互,数据传递。也就是说,网页 URL的后缀不是.htm、.html、.shtml、.xml等静态网页的常见形动态网页制作格式,而是以.aspx、.asp、.jsp、.php、.perl、.cgi等形式为后缀,并且在动态网页网址中有一个标志性的符号——“?”。
简要归纳如下:
(1)动态网页一般以数据库技术为基础,可以大大降低网站维护的工作量;
(2)采用动态网页技术的网站可以实现更多的功能,如用户注册、用户登录、在线调查、用户管理、订单管理等等;
(3)动态网页实际上并不是独立存在于服务器上的网页文件,只有当用户请求时服务器才返回一个完整的网页;
(4)动态网页中的“?”对搜索引擎检索存在一定的问题,搜索引擎一般不可能从一个网站的数据库中访问全部网页,或者出于技术方面的考虑,搜索之中不去抓取网址中“?”后面的内容,因此采用动态网页的网站在进行搜索引擎推广时需要做一定的技术处理才能适应搜索引擎的要求。
客户端
客户端脚本在壹个特定的网页面改变界面以及行为或响应鼠标或键盘操作,或在指定时间事件。在这种情况下,动态行为在发生时。客户端生成的内容在用户的本地计算机系统里头。[1]
这些网页使用的演示技术被称为富接口页面。客户端脚本语言,如JavaScript(爪哇脚本)或ActionScript(动作脚本),动态HTML(DHTML)和Flash技术的使用,经常被用来编排媒体类型(声音,动画,修改文本等)的演示。该脚本还允许使用远程脚本的壹种技术,DHTML页面请求从服务器的其他信息,使用一个隐藏的框架,XMLHttpRequest或Web(网络)服务。
服务器端
一个在Web(网络)服务器上运行的程序(服务器端脚本)是用来改变在不同的网页之上的网页内容,或调节序列或重新加载的网页。服务器响应来确定这种情况,张贴的超文本标记语言表单里头的数据,URL中的参数,所使用的浏览器类型,时间流逝,或数据库或服务器的状态。
这些网页通常都是如ASP,ColdFusion,Perl,PHP,WebDNA,或者其他的服务器端语言。这些服务器端语言经常使用的通用网关接口(CGI)产生动态网页。有两个明显的例外是asp.net和JSP(爪哇服务器页面),在它们的API(程序编程接口)里头会重复使用CGI的概念,但实际上所有的web(网络)请求分派到壹个共享的虚拟机。动态网页有很少或没有预期变化时,往往会高速缓存和页面预计会接收大量的网络流量,会营造缓慢的加载时间至服务器。
缺点
1、首先动态网页在访问速度上不占优势
动态网页首先获得用户的指令,然后网页拿着指令到数据库中找和指令相对应的数据,然后传递给服务器,通过服务器的编译把动态页面编译成标准的HTML代码,传递给用户浏览器,这样用户就看到了网页。问题出来了,每次访问网页都要经过这么一个过程,这一过程至少需要几秒钟的时间,访问的人数一多,页面的加载速度就会变慢,对服务器来说也是一种负担;从用户角度来说,网页加载的慢,迟迟没有反应,下次谁还会来访问你的网站。[2]
而静态网页就简单了,静态网页是实际存在的,无需经过服务器的编译,直接加载到客户浏览器上显示出来。
由此可见,动态网页在访问速度上并不占优势。
2、在搜索引擎收录方面并不占优势
上面从服务器和用户体验的角度说了一下,下面再从搜索引擎收录角度说一下,动态网页是在用户输入指令后才形成的页面,并不存在这个页面,而搜索引擎只会抓取现成的,并不会自己输入,因此网站在搜索引擎收录方面并不占优势。搜索引擎还是喜欢静态页面。
不过搜索引擎在不断完善发展。到目前为止,绝大多数的搜索引擎都已支持动态页面的抓取。
新技术
1、PHP 即Hypertext Preprocessor(超文本预处理器),它是当今Internet上最为火热的脚本语言,其语法借鉴了C、Java、PERL等语言,但只需要很少的编程知识你就能使用PHP建立一个真正交互的Web站点。
它与HTML语言具有非常好的兼容性,使用者可以直接在脚本代码中加入HTML标签,或者在HTML标签中加入脚本代码从而更好地实现页面控制。PHP提供了标准的数据库接口,数据库连接方便,兼容性强;扩展性强;可以进行面向对象编程。
2、ASP 即Active Server Pages(活跃服务器页),它是微软开发的一种类似超文本标识语言(HTML)、脚本(Script)与CGI(公用网关接口)的结合体,它没有提供自己专门的编程语言,而是允许用户使用许多已有的脚本语言编写ASP的应用程序。ASP的程序编制比HTML更方便且更有灵活性。它是在Web服务器端运行,运行后再将运行结果以HTML格式传送至客户端的浏览器。因此ASP与一般的脚本语言相比,要安全得多。
ASP的最大好处是可以包含HTML标签,也可以直接存取数据库及使用无限扩充的ActiveX控件,因此在程序编制上要比HTML方便而且更富有灵活性。通过使用ASP的组件和对象技术,用户可以直接使用ActiveX控件,调用对象方法和属性,以简单的方式实现强大的交互功能。
但ASP技术也非完美无缺,由于它基本上是局限于微软的操作系统平台之上,主要工作环境是微软的IIS应用程序结构,又因ActiveX对象具有平台特性,所以ASP技术不能很容易地实现在跨平台Web服务器上工作。
3、JSP 即Java Server Pages(爪哇服务器页面),它是由Sun Microsystem公司于1999年6月推出的新技术,是基于Java Servlet以及整个Java(爪哇)体系的Web开发技术。
JSP和ASP在技术方面有许多相似之处,不过两者来源于不同的技术规范组织,以至 ASP一般只应用于Windows NT/2000平台,而JSP则可以在85%以上的服务器上运行,而且基于JSP技术的应用程序比基于ASP的应用程序易于维护和管理,所以被许多人认为是未来最有发展前途的动态网站技术。
4、aspx是微软的在服务器端运行的动态网页文件,通过IIS解析执行后可以得到动态页面,是微软推出的一种新的网络编程方法,而不是asp的简单升级,因为它的编程方法和asp有很大的不同,他是在服务器端靠服务器编译执行的程序代码, ASP 使用脚本语言,每次请求的时候,服务器调用脚本解析引擎来解析执行其中的程序代码,而asp.net 则可以使用多种语言编写,而且是全编译执行的,比ASP 快,而且,不仅仅是快的问题,有很多优点。
静态网页与动态的区别:
程序是否在服务器端运行,是重要标志。在服务器端运行的程序、网页、组件,属于动态网页,它们会随不同客户、不同时间,返回不同的网页,例如ASP、PHP、JSP、ASPnet、CGI等。运行于客户端的程序、网页、插件、组件,属于静态网页,例如html页、Flash、JavaScript、VBScript等等,它们是永远不变的。
静态网页和动态网页各有特点,网站采用动态网页还是静态网页主要取决于网站的功能需求和网站内容的多少,如果网站功能比较简单,内容更新量不是很大,采用纯静态网页的方式会更简单,反之一般要采用动态网页技术来实现。
静态网页是网站建设的基础,静态网页和动态网页之间也并不矛盾,为了网站适应搜索引擎检索的需要,即使采用动态网站技术,也可以将网页内容转化为静态网页发布。[3]
动态网站也可以采用静动结合的原则,适合采用动态网页的地方用动态网页,如果必要使用静态网页,则可以考虑用静态网页的方法来实现,在同一个网站上,动态网页内容和静态网页内容同时存在也是很常见的事情。
(责任编辑:lxy)