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. __proto__和prototype的一些理解

    var Person = function(name) { this.name = name; } var p = new Person(); new操作符的操作是 var p = {} p.__pr ...

  2. nginx配置访问本地静态资源

    下面说说如何在windows下使用nginx作为静态资源服务器, 1.修改config目录下,这个配置文件,基本上所有的配置都在这里面做, 2.主要的配置参数如下,一些无关的参数我直接去掉了,注意,里 ...

  3. 管道式编程(Pipeline Style programming)

    受 F# 中的管道运算符和 C# 中的 LINQ 语法,管道式编程为 C# 提供了更加灵活性的功能性编程.通过使用 扩展函数 可以将多个功能连接起来构建成一个管道. 前言 在 C# 编程中,管道式编程 ...

  4. 重磅!滴滴跨端框架Chameleon 1.0正式发布

    滴滴在 GitHub 上开源的跨端解决方案 Chameleon(简写 CML)正式发布 1.0 版本,中文名卡梅龙:中文意思变色龙,意味着就像变色龙一样能适应不同环境的企业级跨端整体解决方案,具有易用 ...

  5. formSelects隐藏功能键

    隐藏后 方法: // selectId就是select的id,这是在select渲染完后执行 $("#selectId").parent().find(".xm-sele ...

  6. 关于Hive中的join和left join的理解

    一.join与left join的全称 JOIN是INNER JOIN的简写,LEFT JOIN是LEFT OUTER JOIN的简写. 二.join与left join的应用场景 JOIN一般用于A ...

  7. 《Mysql - Mysql 是如何保证高可用的?》

    一:为什么要进行主备切换? - 比如软件升级.主库所在机器按计划下线等.主动运维. - 比如主库所在机器掉电,为了保证服务的正常运行,而进行切换.可能是被动操作. - 流程图 -   二:什么是同步延 ...

  8. 20191104-基于Python计数排序算法分析

    计数排序 计数排序算法没有用到元素间的比较,它利用元素的实际值来确定它们在输出数组中的位置,也就是说元素从未排序状态变为已排序状态的过程,是由额外空间的辅助和元素本身的值决定的,将每个元素出现的次数记 ...

  9. IOS微信浏览器返回事件监听问题

    业务需求:从主页进入A订单页面,然后经过各种刷新或点标签加载后点左上角的返回直接返回到主页 采取方法:采用onpopstate事件监听url改变,从而跳转到主页 遇到的问题:安卓上测试没问题:苹果手机 ...

  10. Springboot入门及配置文件介绍(内置属性、自定义属性、属性封装类)

    目的: 1.Springboot入门 SpringBoot是什么? 使用Idea配置SpringBoo使用t项目 测试案例 2.Springboot配置文件介绍 内置属性 自定义属性 属性封装类 Sp ...