今天开始学习http协议,把自己从网上整理,自己理解的部分先发出来,共勉!

(PS笔者小白一枚,如有理解性的错误,请指正告知,为感!!!)

一、  HTTP协议概念

  所谓的“协议”是指,计算机在通信网络中俩台计算机之间进行通信所必须共同遵守的规定或者规则。http(超文本传输协议)是一种通信协议,它允许将HTML(超文本标记语言)文档从web服务器传送到客户端的浏览器。

目前普遍使用的是HTTP/1.1版本

二、  web服务器,浏览器以及代理服务器

在浏览器中输入URL,点击回车,然后我们就可以看到一个我们想要得到的网页。这个原理是如何的呢?

如上图所示:

在向浏览器中输入url过后,浏览器会向Web服务器(web server)发送出一个request(请求),web服务器接收到request之后进行处理,生成相应的response(响应),然后返还给浏览器,浏览器通过解析response中的html,再生成相应的网页,这就是我们看见的网页内容。

注:在request和response传输过程中可能也会经过Proxy Server(代理服务器),最后才到达服务器或者返回到浏览器,如下图所示:

代理服务器:所谓的代理服务器通俗上理解就是一个网络信息的中转站,它相当于一个电脑中的Cache(即快速缓存区,通常代理服务器都设有一个较大的硬盘缓冲区)。这样在进行访问请求时,就会优先先从此缓存区中查找,如果之前有过该类请求就会快速进行响应;如果没有,就会继续进行正常的请求访问。所以使用Proxy Server可以提高访问速度。代理服务器还有一个大家普遍知道的功能---用于翻墙,可突破国内网站限制访问国外网站资源。另外proxy server还提供大量的伪IP地址,用户可以通过这些伪IP地址访问资源,隐藏自己的身份。

三、  URL解读

URL:统一资源定位符(Uniform Resource Locator),指的是Internet文件在网上的地址。其基本格式如下:

 schema://host[:port#]/path/.../[?query-string][#anchor]

1、  Schema(模式/协议):用于指定所使用的是何种协议,告诉浏览器如何处理将要打开的文件。最常用的协议模式是http(超文本传输协议),这个协议可用来访问网络。其他常用协议如下:

http:超文本传输协议

https:用安全套接字层传送的超文本传输协议

ftp:文件传输协议

mailto:电子邮件地址

ldap:轻型目录访问协议搜索

file:本地电脑或网上分享的文件

telnet:Telnet协议

2、  host:http服务器的IP地址或者域名

3、  port#:http服务器默认端口是80,这种情况下端口号可以省略。但是如果使用其他的端口号,则必须指明,例如:http://192.168.1.45:2400/XXX

4、  path:访问资源的路径

5、  query-string:发送给http服务器的数据

6、  anchor: 锚

实例:

http://192.168.10.474:1100/study/8000/shoxxDetail.jsp?order_id=3210000xx_228312&id=144

schema:使用的是http协议

host:192.168.10.474

port:1100

path:/study/8000/shoxxDetail.jsp?

query-string:order_id=3210000xx_228312&id=144

。。。。后面再补,开会去了~~~~

HTTP笔记整理(1)的更多相关文章

  1. python学习笔记整理——字典

    python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...

  2. 从0开始学Swift笔记整理(五)

    这是跟在上一篇博文后续内容: --Core Foundation框架 Core Foundation框架是苹果公司提供一套概念来源于Foundation框架,编程接口面向C语言风格的API.虽然在Sw ...

  3. Deep Learning(深度学习)学习笔记整理系列之(五)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  4. 学习ReactNative笔记整理一___JavaScript基础

    学习ReactNative笔记整理一___JavaScript基础 ★★★笔记时间- 2017-1-9 ★★★ 前言: 现在跨平台是一个趋势,这样可以减少开发和维护的成本.第一次看是看的ReactNa ...

  5. Deep Learning(深度学习)学习笔记整理系列之(八)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  6. Deep Learning(深度学习)学习笔记整理系列之(七)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  7. Deep Learning(深度学习)学习笔记整理系列之(六)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  8. Deep Learning(深度学习)学习笔记整理系列之(四)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  9. Deep Learning(深度学习)学习笔记整理系列之(三)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  10. Deep Learning(深度学习)学习笔记整理系列之(二)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

随机推荐

  1. List<Map<String,Object>>使用Java代码遍历

    List<Map<String,Object>>的结果集怎么使用Java代码遍历以获取String,Object的值: package excel; import java.u ...

  2. clob型不能用 distinct,以及转换clob类型方法

    举例clob型不能用 distinct public List<WorkingPaper> findAssignedWorkPapers(String projectId, String ...

  3. lnode满,维护记录

    df  17% 正常 df -i 100% inode耗尽. | uniq -c 查出占用lnode最大的目录是 /var/spool/exim4/input 居然有15W多个小文件 exim4是邮件 ...

  4. 未添加document.ready产生的BUG

    今天在框架里使用superslide插件时,在javascript部分 <script type="text/javascript"> jQuery(".yj ...

  5. 【如何快速的开发一个完整的iOS直播app】(播放篇)

    原文转自:袁峥Seemygo    感谢分享.自我学习 前言 在看这篇之前,如果您还不了解直播原理,请查看上篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,集成ijkpl ...

  6. Codeforces 740A. Alyona and copybooks 模拟

    A. Alyona and copybooks time limit per test: 1 second memory limit per test: 256 megabytes input: st ...

  7. flask-admin章节二:wtforms的使用以及在数据库场景中使用QuerySelectField代替SelectField

    概述 flask admin可以支持自定义视图,对于涉及到比较复杂的视图可以选择继承flask_admin.BaseView来定义自己期待的结构. 自定义的视图的每个函数可以使用flask_admin ...

  8. 不容错过!2016年度优秀UI/UX设计文章

    本文整理了一些2016年度最受欢迎的文章,例如有关UI / UX设计的理论知识,书籍和工具,如何做出更好的设计的方法和建议,以及新的设计趋势. 1. 2017年用户体验设计趋势 我们期待着2017年用 ...

  9. 说说Statement、PreparedStatement和CallableStatement的异同(转)

    1.Statement.PreparedStatement和CallableStatement都是接口(interface). 2.Statement继承自Wrapper.PreparedStatem ...

  10. grep笔记

    grep "match_text" file1 file2 file3 ...                        #grep可以对多个文件进行过滤 --color   ...