动态网页和静态网页的区别
发布时间:2020-12-15 02:36:14 所属栏目:Java 来源:网络整理
导读:阅读本教程的读者至少已经具备了初级的 Web 开发基础,了解 HTML、CSS、JavaScript 等前端技术,甚至还亲自搭建过网站。大家应该都知道,网页本质上就是一个 HTML 文档,浏览器访问网页,其实就是下载并解析 HTML 文档的过程。 静态网页 如果 HTML 文档真实存
阅读本教程的读者至少已经具备了初级的 Web 开发基础,了解 HTML、CSS、JavaScript 等前端技术,甚至还亲自搭建过网站。大家应该都知道,网页本质上就是一个 HTML 文档,浏览器访问网页,其实就是下载并解析 HTML 文档的过程。
静态网页如果 HTML 文档真实存在于服务器的某个文件夹中,那么服务器就直接读取该文档内容,然后发送给浏览器。这种 HTML 文档是程序员提前编辑好的,它的内容不会发生变动,任何情况下访问该文档看到的内容都是一样的,所以称它为静态网页(Static Page)。例如,C语言中文网为了提高用户访问速度,提前将首页(http://c.biancheng.net/index.html)制作成了一个 HTML 文档,只要不更新网站,它的内容在何时何地都是一样的,这就是一个典型的静态网页。 早期(2000 年以前)的互联网大都是静态页面,用来对外展示一些信息,就像说明书一样。 动态网页如果 HTML 文档不存在,服务器就需要根据用户的请求参数(例如 ID、用户名、分类、时间、地点等)临时生成一个 HTML 文档,然后再发送给浏览器。这种临时生成的 HTML 文档的内容不是固定的,用户的请求参数不同,生成的内容往往就不同;因为它的内容经常变动,所以称为动态网页(Dynamic Page)。例如,我们在网上订购周杰伦演唱会门票时,会看到剩余门票的数量,它是实时更新的,用户每订购一次它的数量就减一,这种网页就是编程语言在查询数据库后临时生成的,它只能采用动态网页技术来实现。 动态网页必须借助某种编程语言才能实现,目前常见的解决方案有以下几种:
进阶其实,我们还可以将浏览器请求网页的过程进一步抽象。对于浏览器来说,它接收到的内容就是 Web 服务器通过网络传送给它的一个字符串流,只要把这个字符串流以 HTML 格式来解析,就能看到网页的效果。字符串流可以从某个静态 HTML 文档中原封不动地读取,也可以由后台程序临时生成。动态生成字符串流时,后台程序可以查询数据库,分析用户请求参数,检测服务器资源状态等,从而使得生成内容千变万化。 从这个角度看,后台程序不必生成临时的 HTML 文档,只要输出一个字符串流即可。 总结静态网页和动态网页的区别:
和请求静态网页相比,浏览器请求动态网页时仅仅多了一个步骤,就是生成 HTML 文档的过程。但是这个过程可不简单,它是决战 Web 后台开发的制高点,催生了很多编程语言和框架,而且更新速度非常快。 从本质上讲,Web 后台程序员就是在解决生成 HTML 文档的问题。 注意,只有服务器才会区分静态网页和动态网页,浏览器并不关心它们的区别;对于浏览器来说,它只需要得到一个字符串流,至于这个字符串流是如何生成的,它并不关心,也没有必要关心。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |