1、概述:
Web是对万维网的一个俗称,它是一个体系结构框架,该框架把分布在Internet数百万机器上的内容链接起来,供人访问。1994年,CERN和MIT签署建立万维网联盟(即W3C,World Wide Web Consortium)的协议,它致力于进一步开发Web以及对协议进行标准化,鼓励站点之间进行交流,它的主页是www.w3.org,这里涵盖了该联盟所有文档和活动的页面链接。
2、体系结构:
- 页面(Page):
- 我们所访问到的内容,即是一个页面,每个页面可以包含指向其他页面的链接(Link),现在把这种由一个页面指向另一个页面的想法称为超文本(Hypertext)
- 浏览器(Browser):
- 我们常见的浏览器有Chrome、IE、FireFox等,那么浏览器的作用是什么呢?它是对浏览器所请求的页面进行解释,并且在屏幕上以恰当的格式显示,譬如说,你现在所在的这个页面的本来效果并不是你现在所看到的样子,它是经过浏览器解释的,它的真实样子是什么呢?你可以按下F12键或者第二功能键(Fn)+F12来查看它的本来面目,它是代码的集合呈现(如果你是在百度的首页进行这个操作,那么目前你应该可以看到一则招聘信息,也许这就是大公司的套路>_<,和当年谷歌一个套路)。
- 传输协议:
- 即HTTP(HyperText Transfer Protocol),我们每次在浏览器上进行的操作都是关于‘’请求–响应‘’,那么,他们之间的通信规则(即套路)是什么呢?就是HTTP协议。
- 客户端:
- 标识符URL:
- 当Web最初被建立时,为了让一个页面指向另一个页面,必须依靠一种机制来实现对访问页面的命名和定位,Web提供了一种方案来实现它,对于每个页面,都给它分配一个统一资源标识符(即URL,Uniform Resource Locator),该标识符在全球范围内有效,URL由三部分组成:协议,页面所在机器DNS名字以及唯一指向特定页面的路径,比如你现在所在这个页面URL(http://www.qjidea.com/www/),http即超文本传输协议,www.qjidea.com即我的主机IP所对应的域名,www/即当前这个页面在主机上的存放位置;
- 访问步骤:
- 浏览器确定URL,请求DNS查询服务器www.qjidea.com的IP地址;
- DNS服务器返回IP(192.168.25.10);
- 浏览器与192.168.25.10机器(主机)的80端口建立一个TCP连接,80端口是HTTP协议的网络端口,一般为默认访问;
- 浏览器发送HTTP报文(信息),请求/index.html页面;
- www.qjidea.com服务器发回页面作为HTTP响应;
- 如果该页面包含需要显示的URL,则浏览器经过同样的处理过程获取其他URL;
- 接下来,浏览器就会显示所请求的页面/index.html;
- 如果短期内没有向同一个服务器发出其他请求,则自动释放TCP连接。
- 标识符URL:
- MIME类型:
- (Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型,为了能够显示新页面或者说显示任何页面,浏览器就必须了解其格式。但是现行浏览器有多种,页面格式也有多种,为了让所有浏览器都了解所有网页,网页必须以一种标准化格式的语言编写,即HTML,它是WEB通用语,每个MIME类型由两部分组成,前面是数据的大类别,例如声音audio、图象image等,后面定义具体的种类。常见的MIME类型(通用型):超文本标记语言文本 .html text/html、xml文档 .xml text/xm等
- Cookie:
- 问题:对于直接获取内容的网站,譬如百度,头条等网站,用户可以直接获取其所需要的内容,不需要登录或者注册,但有些网站则必须在注册或者登录后才可以获取到页面信息,譬如:网上购物,门户网站的个性化设置等,故而有这样一个问题存在:如何识别用户是谁,进而显示正确的页面?
- 解决:采用一项称为小甜饼(Cookie,它是一小段文本信息,伴随着用户请求页面在WEB服务器和浏览器之间传递)的技术,当用户请求一个WEB页面时,服务器除了提供所请求的页面以外,还以Cookie的形式提供了一些附件信息。Cookie是一个相当小的命名的字符串(<=4KB),服务器将它和浏览器关联起来,浏览器把服务器所提供的Cookie通常存储在客户机磁盘Cookie目录下一段时间,这样整个浏览器在调用期间一直坚持Cookie,除非用户禁用Cookie,Cookie只是字符串,而不是可执行的程序。
- 安全:用户在对页面进行操作时,往往会有输入密码和账号信息的操作,由于Cookie存在跨网站的跟踪问题,所以用户信息特别是重要的账户信息,就会面临暴露的风险,所以在涉及重要信息的页面录入时,一定要注意当前页面以及网站的安全性。
3、静态Web页面:
静态Web页面的成员:HTML,CSS,输入与表单等,Web静态页面是最简单的页面形式。
- HTML:即HyperText Markup Language 超文本标记语言,HTML包含了文本,图形和指向其他Web页面指针的Web页面,其中,最重要的就是我们所说的超链接,即<a>HTML</a>功能,它可以连接到任何新的页面,最大化的实现了信息和资源的共享。
- CSS:即Cascading Style Sheets 层叠样式表,它的作用是实现HTML页面的渲染,即对其页面进行格式的控制,包括页面大小,位置,背景颜色,文字格式,悬浮鼠标时状态等。
- 输入与表单:我们在进行注册与登录操作时,网页页面往往会出现一个表单,比如:淘宝登录页面,要求输入用户名和密码(现在也可以进行扫码登录,这种登录方式比较安全,但是似乎并不人性化),即为表单,表单还包括复选框(记住密码功能),下拉菜单等
4、动态Web页面:
什么是动态Web页面?比如我们在网页版百度地图上输入地址:陕西省西安市青龙寺,点击回车后,网页版地图便会按照默认大小显示出其所在的位置,在点击缩放后,也会有相应的效果实现。即为动态页面。类似这样许多的功能,它将计算从个人电脑转移到Internet上的共享服务器集群,该模式即为云计算的普遍模式。
动态页面请求的方法:
- CGI:Common Gateway Interface 公共网关接口,CGI定义了一个接口,它允许Web服务器和后端程序及脚本通信;
- API:应用PHP(Hypertext Preprocessor 超文本预处理器)语言,内嵌程序和页面内容,使得网页响应更快,PHP易于使用,源码开放,用途广泛。
- JSP:JavaServer Pages 即Java服务器页面,类似PHP。
客户端动态Web页面生成,应用JavaScript,它应用于客户端计算机与用户交互。PHP应用于远程数据库进行交互;其他涉及的还有Ajax异步快速响应等知识,可进一步具体了解。
5、参考资料:
1、《计算机网络》 Andrew&&David 著 清华大学出版社;
I have been surfing online more than 3 hours today, yet I never found any interesting article like yours. It is pretty worth enough for me. In my view, if all webmasters and bloggers made good content as you did, the internet will be much more useful than ever before. dkaeekkfdkkadgbc
Perfect webpage you have at this website! Precisely how could i add in this blog’s feed into my Rss reader? cbedeffdfgfk