HTTP协议通信原理

请求报文
请求行      GET index.html HTTP 1.1
请求方法:get  读取服务器数据内容
       post   提交存储服务端数据(用户注册)
协议版本:    http1.0 (TCP短链接)http1.1(TCP长连接) http2.0
请求头      Accept:image/gif,inage/jpeg
         Accept:Language:zh-cn
         HOST;www.jd.com
            HTTP-User-Agent:firefox IE chrome
空行          N/A
请求报文主体      GET方法无请求报文主体,POST方法才有

====================================================
响应报文
起始行      HTTP1.1 200 OK (200 ok 表示状态码信息)
状态码信息范围与作用
100~199 指定客户端相应的某些动作
200~299 用于表示请求成功
300~399 用于已经移动的文件,并且常包含在定位头部信息中指定新的地址信息
400~499 指出客户端错误
500~599 指出服务器端错误

相应头
空行          N/A
响应报文主体  

=============================================================================================================================
常用状态码信息说明
200 - OK 服务器成功返回网页
301 - Moved Permanently 永久跳转,所请求网页将永久跳转到被设定的新位置
302 临时跳板
403 - Forbidden 禁止访问
404 - Not Found 服务器找不到客户指定页面,可能是客户端请求了服务器端不存在的资源
500 - Internal Server Error内部服务器错误,不能完成客户请求
502 - Bad Gateway 坏网关,代理服务器请求后端服务时,后端服务没有完成相应网关服务器 (通常为反向代理服务器下面节点问题所致)
503 - Service Unavailable 服务器当前不可用
504 - Gateway Timeout 网关超时
====================================================================================================================================

HTTP协议资源说明
1.媒体资源类型
web可处理接受的资源类型(text/html css jpg avi)
常用(mime.type)的文件进行定义资源类型
2.URL/URI
url 统一资源定位符
uri 统一资源标识符
3.静态文件资源
特点:固定的URL地址且地址中不包含特殊符号,每个网页都是独立的文件
网页程序在用户浏览器解析,因此服务器端可接受更多并发访问
4.动态文件
扩展名后缀常为:.asp .aspx .php .do .cgi
特点:不是独立存在与服务器上的网页文件,当用户请求时,服务器解析程序并通过读取数据库来返回完整网页
动态网页中的"?"在搜索引擎收录方面中不会抓取“?”后的内容,因此企业推广时采用伪静态技术已方便搜索引擎抓取
5.伪静态文件资源
============================
网站度量值统计方法
1.IP(独立IP)通过访问网站时被计的总次数
2.PV 每点开一个网站就是一个PV
3.UV (独立访客) 同一个客户端(PC或移动端)访问网站被计为一个访客。
一天24小时内相同的客户端访问同一个网站只计一次UV
cookie:标识用户主机身份信息

web服务软件分类
静态;Apache Nginx Lighttpd
动态: PHP(FastCGI) Tomcat Resin

HTTP协议通信原理 与常见报错信息的更多相关文章

  1. python常见报错信息!错误和异常!附带处理方法

    作为 Python 初学者,在刚学习 Python 编程时,经常会看到一些报错信息. Python 有两种错误很容易辨认:语法错误和异常. Python assert(断言)用于判断一个表达式,在表达 ...

  2. Jmeter常见报错信息: ERROR - jmeter.protocol.http.proxy.ProxyControl: Could not initialise key store java.io.IOException: Cannot run program "keytool"

    JMeter 2.10 用的新方法来录制HTTPS请求Java 7. 录制的过程中会碰到一些问题或者报错,就目前碰到的,做出一些总结. ERROR - jmeter.protocol.http.pro ...

  3. java常见报错及解决

    Java常见报错信息: Java 常见异常种类 Java Exception: 1.Error  2.Runtime Exception 运行时异常 3.Exception  4.throw 用户自定 ...

  4. web报表工具FineReport使用中遇到的常见报错及解决办法(二)

    web报表工具FineReport使用中遇到的常见报错及解决办法(二) 这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己. 出现问题先搜一下文档上有没有,再看看度娘 ...

  5. HDFS集群常见报错汇总

    HDFS集群常见报错汇总 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.DataXceiver error processing WRITE_BLOCK operation 报 ...

  6. 03:git常见报错解决方法

    1.1 git常见报错解决方法 1.warning: LF will be replaced by CRLF in .idea/workspace.xml. 参考博客:https://www.cnbl ...

  7. JavaScript 调试常见报错以及原因

    JavaScript 调试常见报错以及原因 测试环境 chrome 版本 66.0.3359.170(正式版本) (64 位) TypeError 类型错误 不是操作符所接受的数据类型. //---- ...

  8. [转]HTTP协议通信原理

    本文转自<HTTP协议通信原理> 了解HTTP HTTP(HyperText Transfer Protocol)是一套计算机通过网络进行通信的规则.计算机专家设计出HTTP,使HTTP客 ...

  9. Nginx 常见报错

    Nginx 常见报错 启动报错:[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use) 原因:这个是nginx重启时经常遇到 ...

随机推荐

  1. 【Leetcode_easy】892. Surface Area of 3D Shapes

    problem 892. Surface Area of 3D Shapes 题意:感觉不清楚立方体是如何堆积的,所以也不清楚立方体之间是如何combine的.. Essentially, compu ...

  2. ng2中 如何使用自定义属性data-id 以及赋值和取值操作

    项目环境:ng4.x 写法说明: [attr.data-nurseKey] <div [attr.data-nurseKey]="k.nurseKey"></di ...

  3. 【GStreamer开发】GStreamer基础教程02——GStreamer概念

    上一个教程演示了如何自动生成一个pipeline.这次我们打算用一个个element来手动搭建一个pipeline.我们这个教程会演示: 1. 什么是GStreamer的element以及如何建立一个 ...

  4. 图解JavaScript闭包面试题

    由于最近在学习关于闭包相关的知识,并且闭包这个知识点让我有点搞不太清楚其具体的定义,所以在网上也查阅了很多大佬的讲解和对闭包的一个定义. 最后感觉还是MDN上的说法感觉比较好理解一些,对闭包还是不太理 ...

  5. vmware linux 硬盘空间不足时增加硬盘并挂载

    不同的版本的vmware在设置界面中可能稍有不同,基本是一致的. 还有一种方式是扩展,这里没有记录,扩展时需要在虚拟机关机状态下. 1.选择在vmware中点击设置并打开,将光标定位在hard Dis ...

  6. springmvc流程 struts2 spring Hibernate 优缺点 使用场景介绍

    为什么使用HandlerAdapter? SpringMVC使用一个Servlet(DispacherServlet)代理所有的请求 , SpringMVC中的处理器是方法级别的处理器,而非类级别的处 ...

  7. 题解 Luogu P1110 【[ZJOI2007]报表统计】

    感谢 @cmy962085349 提供的hack数据,已经改对了. 先声明,我好像是题解里写双$fhq$ $treap$里唯一能过的...(最后两个点啊) 思路:首先看题目,$MIN_GAP_SORT ...

  8. Python——成员变量

    一.类变量 在类命名空间内定义的变量就属于类变量,python允许使用类来修改.读取类变量. 例: class a: b = '我是类变量' def c(self): print (a.b) # 通过 ...

  9. Linux中request_irq()中断申请与处理说明

    1.  中断的理解 中断你可以理解为就是一种电信号,是由硬件设备产生的然后发送给处理器,处理器接收到中断后,就会马上向操作系统反映此信号,之后就是系统的工作了. 这里有两个注意的地方,第一中断是随时都 ...

  10. 【dfs】Sequence Decoding

    Sequence Decoding 题目描述 The amino acids in proteins are classified into two types of elements, hydrop ...