asp.net之动态页面和静态页面的区别

  当我开始接触web开发的时候,首先学到的是html、css、js这一类网页语言,通过布局可以搭建出一个静态网站,效果也跟我们上网时经常看到的一些网站一样了。于是都感觉很有成就感了。

  可是什么又是动态语言呢?在还没有学习这些内容时,我一直没搞清楚动态和静态的区别,包括前辈们说的动态网站和静态网站,包括他们和构建asp.net网站之间的关系。通过学习之后,做出一些个人的总结。

  1.静态页面

  特点:静态页面或者说静态网页,没有后台数据库,没有后台程序,是直接存在于服务器硬盘上的,不需要经过服务器编译就能直接显示,通常是以.html,.htm,.shtml结尾

  URL请求:浏览器通过URL向IIS发出请求,IIS根据后缀名判断是动态页面还是静态页面,如果是静态页面,则直接从硬盘读取并发回浏览器再做显示。如果是动态页面则进入asp.net处理机制,最后将处理完成的页面发回到浏览器。

  优点:

                a.速度方面,访问更快。它不用请求数据库,不用做程序编译处理,因此也减少了系统的消耗;

b.网站优化方面,静态网页可以提高搜索引擎对客户信息的存储和网站的排名,因此更容易被搜索引擎发现,有利于搜索排名的提高。

c.安全性方面,静态网页不用像动态网页那样可以随时动态写入数据能够减少不良代码的攻击提高了网站的安全性。

d.稳定性方面,不会因为数据库或程序的错误影响到网站正常运行或导致数据丢失。

  缺点:

      a.不利于维护更新,如果需要修改数据,必须打开这个页面在上面做修改,因此维护工作更加繁琐,交互性也变的很差。

       b.系统容量方面容易占据较大空间,因为它是实实在在存在于服务器的,如果页面过多则会占据的空间也就更多。

     c.实现功能少。由于缺少了与数据库的关联,在使用功能方面就显得非常弱势了。

  应用:数据量小且不用经常更新的展示型网站更加适合用静态页面搭建

  2.动态页面

  特点:动态页面则是在静态页面的基础上加以提高,有了后台数据库和编程语言的支持,在功能性,交互性上有了大大的提高。动态网页实际上并不是独立存在于服务器上的网页文件,只有当用户请求时服务器才返回一个完整的网页。它需要经过编译才能运行,通常以.asp,.asp.net,.php,.jsp等常见的形式出现。

    优点:a.根据用户实时请求返回用户所需页面,交互性更强。

     b.动态网页以数据库技术为基础,可以大大降低网站维护的工作量。

     c.有了数据库的支持,网站可以实现更多的功能,如用户注册、用户登录、在线调查、用户管理、订单管理等等。

  缺点:a.由于动态页面的生成是采用数据库的内容,所以网页内容主题的永恒性不能保证。这样造成了搜索引擎的阅读困难,即搜索引擎抓不住一个永恒的主题,因此不能输入到搜索引擎中的缓存( cache )中。

     b.动态网址里往往包含 “ ? ” 和很多参数,这让目前技术条件下的搜索引擎在判断和识别造成了很大的困难。

     c.动态网页的实时写入对安全性放面的隐患更多。

asp.net之动态页面和静态页面的区别的更多相关文章

  1. Asp.Net中动态页面转静态页面

    关于在Asp.Net中动态页面转静态页面的方法网上比较多.结合实际的需求,我在网上找了一些源代码,并作修改.现在把修改后的代码以及说明写一下. 一个是一个页面转换的类,该类通过静态函数Changfil ...

  2. 路由器中pppoe,动态IP,静态IP的区别

    路由器中pppoe,动态IP,静态IP的区别 要把路由器设置得能上网,无非就是设置WAN外网接口连接而已.WAN接口能上网,则连接的电脑就能上网,反之则上不了网.只不过WAN接口往往有pppoe,动态 ...

  3. SpringAOP用到了什么代理,以及动态代理与静态代理的区别

    spring aop (面向切面)常用于数据库事务中,使用了2种代理. jdk动态代理:对实现了接口的类生成代理对象.要使用jdk动态代理,要求类必须要实现接口. cglib代理:对类生成代理对象. ...

  4. 一个文件搞定Asp.net core 3.1动态页面转静态页面

    最近一个Asp.net core项目需要静态化页面,百度查找了一下,没有发现合适的.原因如下 配置麻烦. 类库引用了第三方类,修改起来麻烦. 有只支持MVC,不支持PageModel. 继承Actio ...

  5. ASP.Net MVC如何访问的静态页面

    MVC开发中,因为View文件夹下的web.config文件默认会把任何方法的请求的任何文件,路径都交给 System.Web.HttpNotFoundHandler 去处理.起到Controller ...

  6. JSP中动态INCLUDE与静态INCLUDE的区别

    动态INCLUDE 用法: <jsp:include page="included.jsp" flush="true" /> 说明: 它总是会检查所 ...

  7. JSP中动态include和静态include的区别(简版)

    动态的include: 用法:<jsp:include page="1.jsp" flush="true" /> 特点:行为元素,可以带参数:先编译 ...

  8. 动态include与静态include的区别

    搬一下以前写的 个人总结: 动态INCLUDE 用jsp:include动作实现 <jsp:include page="included.jsp" flush="t ...

  9. JSP 中动态 INCLUDE 与静态 INCLUDE 的区别?

    一.静态包含指令<%@include file="fileurl"%> 两个jsp页面的<%@page contentType="text/html:c ...

随机推荐

  1. Hadoop RPC源码阅读-交互协议

    Hadoop版本Hadoop2.6 RPC主要分为3个部分:(1)交互协议(2)客户端 (3)服务端 (1)交互协议 协议:把某些接口和接口中的方法称为协议,客户端和服务端只要实现这些接口中的方法就可 ...

  2. access 导数据到sql server 2008

    使用sp_configure启用'Ad Hoc Distributed Queries'解决 1.启用Ad Hoc Distributed Queries:exec sp_configure 'sho ...

  3. 【转】iOS开发者申请发布证书及真机调试图文详解

    原文网址:http://www.tqcto.com/article/mobile/57822.html 打开iOS Dev Center,选择Sign in,登陆(至少99美元账号),登陆之后在网页右 ...

  4. wifi测试相关(iwconfig,WPA Supplicant用法)

    iwconfig用法 1.打开无线网卡电源 iwconfig wlan0 txpower no 2.列出区域内的无线网络 iwconfig wlan0 scan 3.假设要连接到网络myhome(即e ...

  5. PowerDesigner 如何生成数据库更新脚本

    最近在学习使用PowerDesigner 这个数据库设计工具,发现真的很强大,可以做很多事情,其中就涉及到如果数据库要进行更新了怎么办,主要是增加表,最麻烦的是修改字段名称,增加字段等操作,遇到主要的 ...

  6. [CODEVS3641]上帝选人

    题目描述 Description 世界上的人都有智商IQ和情商EQ.我们用两个数字来表示人的智商和情商,数字大就代表其相应智商或情商高.现在你面前有N个人,这N个人的智商和情商均已知,请你选择出尽量多 ...

  7. SDPLR的安装过程(matlab)

    SDPLR 半正定规划优化工具的安装过程很简单,只要按照SDPLR 1.03-beta User's Guide (short version).pdf的介绍安装就可以. 运行在下载的工具包目录里运行 ...

  8. .net 码农转战 iOS - 初探

    好久没写博客了,之前还打算把毕业设计中涉及到的两个算法拿出来说说(脸型分析 + 声音分析),博文都写了一半了,后来实在太忙了,那篇随笔也就沉在草稿列表中没动过. 我原先是专职 .net 开发的,在公司 ...

  9. Linux程序设计(二)shell程序设计

    1. 管道和重定向 文件描述符0:一个程序的标准输入 文件描述符1:标准输出 文件描述符2:标准错误输出 >操作符:把标准输出重定向到一个文件. >>操作符:将输出内容附加到一个文件 ...

  10. hdoj 5137 How Many Maos Does the Guanxi Worth【最短路枚举+删边】

    How Many Maos Does the Guanxi Worth Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 512000/5 ...