您的位置:首页 > 理论基础 > 计算机网络

网站开发-php开发手机论坛(2)-http协议以及网络原理

2014-08-01 12:46 681 查看
对于初学者来说,最大的难题就是网络到底是怎么运作的.所以了解http协议以及网络原理是很重要的,这将为后面的学习打下坚实的基础.

声明:以下内容有引用别人的博文,我会附录在最后.另外,由于水平有限,可能某些地方理解不够深入,有错误欢迎指出.我会尽量以通俗的语言说明,有些术语不严谨请见谅.

网络原理

网络原理涉及到很多东西,下面我只是粗略的讲述,我个人觉得懂个大概就行了,细节的东西可以慢慢在开发过程中补充学习,毕竟等你把网络相关的书籍读完估计黄花菜都凉了.

当我们打开浏览器,在地址栏中输入URL,然后我们就看到了网页。 原理是怎样的呢?
实际上我们输入URL后,我们的浏览器给Web服务器发送了一个Request, Web服务器接到Request后进行处理,生成相应的Response,然后发送给浏览器, 浏览器解析Response中的HTML,这样我们就看到了网页,过程如下图所示



也就是说,我们平时访问网站,就是通过浏览器向服务器发送请求,然后服务器根据请求返回相应的文件.例如说:我们访问谷歌,浏览器就会发送一个请求报文headers,如下图.这个涉及到http协议,后面会详细说.
(下面的控制台是在chrome浏览器下按f12调用出来的,初学者可以亲自试试,很强大的web调试工具,当然在ie和firefox耶也有相应的调试工具)



然后服务器接收到报文之后,确认请求合法,返回请求页面.如下图.然后浏览器根据得到的内容解析成为我们看到的页面.



通过上面的例子,我们可以看到,网络访问实际上就是客户端请求服务器,服务器返回相应文件给客户端的过程.
在网页浏览层面,客户端就是浏览器,在软件应用层面如qq,客户端就是相应的软件.他们与服务器的交互大多数都是通过http协议.只不过浏览器通常得到的是html文件和数据,而软件得到的一般是数据.其实质是一样.也就是说,在与服务器交互的过程,浏览器和普通软件用的是同一套方法,我们掌握了web服务器交互,自然app服务器交互也就会了.
既然网络访问实质上是文件的请求与传输,而国有国法,家有家规,同样的,这个过程也需要一个规则,OSI网络模型是最基本的东西,应该说是一种思想,各种协议建立在这个模型上面.
OSI七层模型是比较抽象的东西,我就不提了,有兴趣的自行谷歌一下.跟我们开发最密切实际相关的就是http协议和ftp协议.这两种方式都可以用来与服务器交互.一般来说,http协议用于网页浏览,ftp协议用于文件传输.(我们上一节提到的上传源码到服务器就是通过ftp协议).ftp协议没什么好说的,会用ftp软件就行.有兴趣钻研的可以谷歌更多信息了解.重点是http协议的理解.

http协议

这个部分我自己是看了HTTP协议 - 随笔分类 - 小坦克 - 博客园才深入理解http协议的,觉得自己写出来的不会比他写的更好,所以这里就不重复了.大家看完他的这一系列就能对http协议有一定了解.
我强调一下比较重要的东西.
1.POST和GET方法的区别和作用.(这个在以后的开发中会经常用到,后面用到的时候我会在详细说如何使用)
2.COOKIE的概念及作用.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: