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. 【k8s label】对node添加删除label,并根据label筛选节点

    添加 kubectl label nodes kube-node label_name=label_value kubectl label nodes 1.1.1.1 label_name=label ...

  2. 《第一本Docker书》学习笔记——第4章 使用Docker镜像和仓库

    4.2 列出镜像 使用docker images命令: sudo docker images 本地镜像都保存在Docker宿主机的/var/lib/docker目录下. 也可以在/var/lib/do ...

  3. LODOP打印table超宽用省略号带'-'的内容换行问题

    前面的博文有div超宽隐藏(LODOP打印超过后隐藏内容样式),还有有table设置超宽隐藏(),此外,还有超宽后用省略号表示的css样式,此文是针对这个样式的.该样式正常情况下没问题,但是遇到-短线 ...

  4. Consul 快速入门 - Kong最佳实践

    Consul是什么 Consul是一个服务网格(微服务间的 TCP/IP,负责服务之间的网络调用.限流.熔断和监控)解决方案,它是一个一个分布式的,高度可用的系统,而且开发使用都很简便.它提供了一个功 ...

  5. 最新 医渡云java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.医渡云等10家互联网公司的校招Offer,因为某些自身原因最终选择了医渡云.6.7月主要是做系统复习.项目复盘.LeetCo ...

  6. ztree通过id获取节点对象

    var treeObj = $.fn.zTree.getZTreeObj("treeId"); var node = treeObj.getNodeByParam("id ...

  7. Spring+SpringMVC+Mybatis(SSM)框架集成搭建

    Spring+SpringMVC+Mybatis框架集成搭建教程 一.背景 最近有很多同学由于没有过SSM(Spring+SpringMvc+Mybatis , 以下简称SSM)框架的搭建的经历,所以 ...

  8. css拓展

    自定义居中 .second-listleft{/*固定位置*/ position: relative; float: left; width: 25%; height: 100%; backgroun ...

  9. Python进阶:metaclass谈

    metaclass 的超越变形特性有什么用? 来看yaml的实例: import yaml class Monster(yaml.YAMLObject): yaml_tag = u'!Monster' ...

  10. golang日志库之glog使用问题总结

    1. 日志默认输出路径为临时路径,可通过执行命令时带上 -log_dir="路径",指定输出,但路径必须已存在,源码如下,日志文件会生成两个 .INFO等后缀是符号链接文件,另一个 ...