您当前的位置:首页 > 电脑百科 > 网络技术 > 网络知识

web服务器——http协议原理介绍

时间:2019-09-29 13:18:34  来源:  作者:

HTTP协议原理

HTTP协议,全称HyperText Transfer Protocol,中文名为超文本传输协议

HTTP的重要应用之一是WWW服务

www,全称World Wide Web,常称为Web,中文译为”万维网”

HTTP协议的WWW服务应用的默认端口为80

另外一个加密的WWW服务应用https的默认端口为443

说明:一般互联网公司,对外开放的端口,只有两个(80和443)

HTTP协议报文结构详细说明

  • HTTP请求报文结构

1)请求行

a 请求方法

get ----获得请求文件信息的数据内容 (获取)

post ----告知服务器需要保存的数据信息(提交)

b 请求文件信息

说明:当没有指定请求的文件内容,默认请求的是首页文件index.html

c 说明请求报文采用的说明http协议版本

1.0: 规定浏览器与服务器只保持短暂的连接(TCP短连接)

1.1: 规定浏览器与服务器只保持长久的连接 (TCP长连接)

2)请求头(内容)

3)空行

4)请求主体内容

说明:采用get方法时,不会有请求主体内容;采用post方法时,将要提交的信息放入请求主体中

  • HTTP响应报文结构

1)起始行:

a HTTP协议版本说明

1.0: 规定浏览器与服务器只保持短暂的连接(TCP短连接)

1.1: 规定浏览器与服务器只保持长久的连接 (TCP长连接)

b HTTP响应状态码信息

告知请求的结果

200 --- 正常响应请求报文

301 --- 跳转,永久跳转

302 --- 跳转,临时跳转

403 --- 设置指定页面,拒接访问:(权限问题)

404 --- 找不到我所要请求的文件内容(找不到请求的页面信息)

500+ --- 网站后端服务器出现了问题(大部分情况都是网站出现问题)

说明:详细了解很多HTTP状态码,http权威指南

web服务器——http协议原理介绍

http协议状态码对应的作用

c HTTP状态描述信息

curl 命令可以在linux系统中,模拟浏览器功能,访问网站

-I ----- 显示响应报文起始行和响应头部信息

2)响应头部

3) 空行

4)响应报文主体

说明:就是请求报文中,所要请求文件的内容:客户端浏览器会识别响应报文主体内容,进行解析。

  • 不同状态范围码及其作用
web服务器——http协议原理介绍

 

  • HTTP基础原理图 请求与响应报文详细信息
web服务器——http协议原理介绍

客户端请求报文主题内容


web服务器——http协议原理介绍

服务端相应报文主题

  • HTTP术语介绍说明

互联网上的数据有很多种不通的类型,Web服务器会把通过Web传输的每个对象都打上MIME类型(即MIME type)的数据格式标签。最初设计MIME(multipurpose internet mail Extension,多用途因特网邮件扩展)是为了解决再不同的电子邮件系统之间搬移报文时存在的问题。MIME在电子邮件系统种工作得非常好。后来,HTTP也支持这个功能,用它来描述数据并标记不同的数据内容类型。

当Web服务器响应HTTP请求时,会为每一个HTTP对象数据加一个MIME类型,当Web浏览器获取到服务器返回的对象时,会去看看相关的MIME类型,并进行相应的处理。

MIME类型存在与HTTP响应报文的响应头部信息里,它是一种文件标记,表示一种主要的对象和一个特定的子类型,中间由一条斜杠来分割。

1) 媒体资源类型

说明:定义相应web服务可以识别的文件资源类型

如果媒体资源类型中有相应请求文件类型,会帮你进行解析

如果媒体资源类型中没有相应请求文件类型,会将文件传输给客户端,自行解析

2) URL与URI概念介绍

URL 全称为 uniform resource location,中文翻译为统一资源定位符 比如:jingdong.com.hhk URI 全称为 uniform resource identifier 中文翻译为统一资源标识符 比如:jingdong.com

3)静态网页资源

门户新闻业务

新闻网站的特点是一旦发布完成,几乎不会再改动网页内容,因此,新闻业务内容静态化相对比较简单。

web服务器——http协议原理介绍

 

纯粹HTML格式的页面(可以包含图片、视频JS(前段功能实现)、css(样式)等)通常被称为”静态网页”

特征说明:

a 每个页面都有一个固定的URL地址,且URL一般以.html、.htm、.shtml等常见形式为后缀,而且地址中不含有问号“?”或“&”等特殊符号。

b 静态网页是实实在在保存在服务器上的文件实体,每个网页都是一个独立的文件

c 静态资源不需要和数据库进行交互,因此网站交互性能差

d 网页内容是固定不变的,因此,容易被搜索引擎收录(容易被用户找到)(优点)

e 网页程序在用户浏览器端解析,当客户端向服务器请求数据时,

服务器会直接从磁盘文件系统上返回数据(不做任何解析)

4)动态网页资源

web服务器——http协议原理介绍

 

所谓的动态网页是与静态网页相对而言的,也就是说,动态网页的URL后缀不是.html、.htm、.xml、.shtml、.js、.css等静态网页的常见扩展名形式

特征说明:

A%20动态资源需要和数据库进行交互,因此网站交互性能好

省略...

B%20网页程序在服务端解析,当客户端向服务器请求数据时,

服务器会直接从磁盘文件系统上返回数据(会做数据解析后返回)

5)%20伪静态资源(了解/真正企业中有开发人员负责伪静态资源编写)

A%20网页内容是固定不变的,因此,容易被搜索引擎收录

B%20网页程序在用户浏览器端解析,当客户端向服务器请求数据时,服务器会直接从磁盘文件系统上返回数据(不做任何解析)

C%20动态资源需要和数据库进行交互,因此网站交互性能优

D%20网页程序在服务端解析,当客户端向服务器请求数据时,服务器会直接从磁盘文件系统上返回数据(会做数据解析后返回)

如何证明一个网站有价值

  • IP度量值:(参考值)

根据访问的用户源IP地址进行统计,判断有多少用户进行访问?

说明:有可能统计数值不准确

a%20由于有NAT映射问题,会把局域网多台主机不同的源IP地址映射为一个相同的公网源IP地址

b%20由于家用拨号网络,没有固定的外网IP地址

数据计算方法:

01)利用awk数组方法结合Nginx访问日志(分享讲解awk多维数组)

02)通过程序代码进行统计

<script>

var%20_hmt%20=%20_hmt%20||%20[];

(function()%20{

var%20hm%20=%20document.createElement("script");

hm.src%20=%20"https://hm.baidu.com/hm.js?9aa800f882f575237396648643111698";

var%20s%20=%20document.getElementsByTagName("script")[0];

s.parentNode.insertBefore(hm,%20s);

})();

</script>

说明:通过代码实现IP度量值统计记录

03)借助第三方工具进行统计

  • PV度量值:(参考值)

page%20view:页面访问量

数据计算方法:

01)利用awk数组方法结合nginx访问日志(分享讲解awk多维数组)

02)通过程序代码进行统计

<script>

var%20_hmt%20=%20_hmt%20||%20[];

(function()%20{

var%20hm%20=%20document.createElement("script");

hm.src%20=%20"https://hm.baidu.com/hm.js?9aa800f882f575237396648643111698";

var%20s%20=%20document.getElementsByTagName("script")[0];

s.parentNode.insertBefore(hm,%20s);

})();

</script>

说明:通过代码实现IP度量值统计记录

03)借助第三方工具进行统计

  • UV度量值

记录一个独立访客数;利用cookie进行统计记录

cookie:%20记录客户端访问信息,cookie信息一般会保存在客户端

session:记录客户端访问信息,session信息一般会保存在服务端

数据计算方法:

01)利用awk数组方法结合nginx访问日志(分享讲解awk多维数组)

02)通过程序代码进行统计

<script>

var%20_hmt%20=%20_hmt%20||%20[];

(function()%20{

var%20hm%20=%20document.createElement("script");

hm.src%20=%20"https://hm.baidu.com/hm.js?9aa800f882f575237396648643111698";

var%20s%20=%20document.getElementsByTagName("script")[0];

s.parentNode.insertBefore(hm,%20s);

})();

</script>

说明:通过代码实现IP度量值统计记录

03)借助第三方工具进行统计

网站度量linux企业运维常见面试题

  • 你如何理解网站并发?

 


web服务器——http协议原理介绍

 


web服务器——http协议原理介绍

 


web服务器——http协议原理介绍

 

  • 公司访问量是多少,怎么计算的?按照PV UV IP 并发来三个知识点去侃
web服务器——http协议原理介绍

 


web服务器——http协议原理介绍

 

本次完,谢谢大家支持。——ke.ke



Tags:http协议   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
一、什么是IPFS IPFS,全称为星际文件传输系统(Inter Planetary File System),它是一种内容可寻址、版本化、点对点超媒体的分布式存储、传输协议。IPFS将很多种技术(p2p网络技术...【详细内容】
2021-06-17  Tags: http协议  点击:(125)  评论:(0)  加入收藏
无论你是Java、PHP开发者,还是运维人员,只要从事互联网行业,面试时都可能被问到HTTP协议相关知识。历时多天的呕心沥血,为你总结了HTTP协议的经典面试题。由于涉及内容比较繁杂...【详细内容】
2020-07-12  Tags: http协议  点击:(108)  评论:(0)  加入收藏
1989年,万维网(World Wide Web)创始人蒂姆&middot;伯纳斯&middot;李(Tim BernersLee)发表了一篇关于在互联网上建立超链接文档系统的想法的论文,为HTTP的诞生奠定了基础,这是当...【详细内容】
2020-07-09  Tags: http协议  点击:(103)  评论:(0)  加入收藏
前言:从本篇开始,正式介绍HTTP的协议,力图简洁和有效罗列出HTTP协议的核心知识点。1. HTTP协议概念2. HTTP通过请求URI来定位资源3. 告知服务器意图的HTTP方法4. HTTP通过持久...【详细内容】
2020-03-08  Tags: http协议  点击:(128)  评论:(0)  加入收藏
HTTP是一个简单的请求-响应协议,它通常运行在TCP之上,指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。HTTP协议是前端人员学习的入门级知识点,同时它也在不...【详细内容】
2020-03-07  Tags: http协议  点击:(65)  评论:(0)  加入收藏
什么是长连接?长连接还是短连接相比于短连接,长连接更节省资源。如果每发送一条消息就要创建链路、发起握手认证、关闭链路释放资源,会损耗大量的系统资源。长连接只在首次创建...【详细内容】
2019-12-23  Tags: http协议  点击:(84)  评论:(0)  加入收藏
在TCP/IP的模型图中,读者可以看到,HTTP协议位于最上层的应用层,它是互联网上应用最为广泛的一种网络协议,所有的WWW文件都必须遵守这个协议。HTTP是一个由请求和响应组成的、标...【详细内容】
2019-11-26  Tags: http协议  点击:(97)  评论:(0)  加入收藏
0X01 HTTPHTTP是一个应用层的面向对象的协议。0X02 抓包工具Wireshark、burpsuite、Fiddler0X03 POST请求 POST /user/avatar/srote HTTP/1.1 第一部分(请求行)Host: www.moz...【详细内容】
2019-11-04  Tags: http协议  点击:(174)  评论:(0)  加入收藏
负责域名解析的DNS 服务首先,用户访问一个域名,会经过 DNS 解析DNS(Domain Name System),它和 HTTP 协议一样是位于应用层的协议,主要提供域名到IP 的解析服务。我们其实不用域...【详细内容】
2019-10-24  Tags: http协议  点击:(170)  评论:(0)  加入收藏
HTTP协议原理HTTP协议,全称HyperText Transfer Protocol,中文名为超文本传输协议HTTP的重要应用之一是WWW服务www,全称World Wide Web,常称为Web,中文译为”万维网”HTTP协议...【详细内容】
2019-09-29  Tags: http协议  点击:(153)  评论:(0)  加入收藏
▌简易百科推荐
以京训钉开发平台接口文档为例,使用HttpClient类请求调用其接口,对数据进行增删改查等操作。 文档地址: https://www.yuque.com/bjjnts/jxd/bo1oszusing System;using System.C...【详细内容】
2021-12-28  Wednes    Tags:HttpClient   点击:(1)  评论:(0)  加入收藏
阿里云与爱快路由安装组网教程一、开通好阿里云轻量服务器之后在服务器运维-远程连接处进行远程 二、进入控制台后在root权限下根据需要安装的固件位数复制下面命令。32位:wg...【详细内容】
2021-12-28  ikuai    Tags:组网   点击:(1)  评论:(0)  加入收藏
HTTP 报文是在应用程序之间发送的数据块,这些数据块将通过以文本形式的元信息开头,用于 HTTP 协议交互。请求端(客户端)的 HTTP 报文叫做请求报文,响应端(服务器端)的叫做响应...【详细内容】
2021-12-27  程序员蛋蛋    Tags:HTTP 报文   点击:(5)  评论:(0)  加入收藏
一 网络概念:1.带宽: 标识网卡的最大传输速率,单位为 b/s,比如 1Gbps,10Gbps,相当于马路多宽2.吞吐量: 单位时间内传输数据量大小单位为 b/s 或 B/s ,吞吐量/带宽,就是网络的使用率...【详细内容】
2021-12-27  码农世界    Tags:网络   点击:(3)  评论:(0)  加入收藏
1.TCP/IP 网络模型有几层?分别有什么用? TCP/IP网络模型总共有五层 1.应用层:我们能接触到的就是应用层了,手机,电脑这些这些设备都属于应用层。 2.传输层:就是为应用层提供网络...【详细内容】
2021-12-22  憨猪哥08    Tags:TCP/IP   点击:(35)  评论:(0)  加入收藏
TCP握手的时候维护的队列 半连接队列(SYN队列) 全连接队列(accepted队列)半连接队列是什么?服务器收到客户端SYN数据包后,Linux内核会把该连接存储到半连接队列中,并响应SYN+ACK报...【详细内容】
2021-12-21  DifferentJava    Tags:TCP   点击:(10)  评论:(0)  加入收藏
你好,这里是科技前哨。 随着“元宇宙”概念的爆火,下一代互联网即将到来,也成了互联网前沿热议的话题,12月9日美国众议院的听证会上,共和党议员Patrick McHenry甚至宣称,要调整现...【详细内容】
2021-12-17  王煜全    Tags:Web3   点击:(14)  评论:(0)  加入收藏
一、demopublic static void main(String[] args) throws Exception { RetryPolicy retryPolicy = new ExponentialBackoffRetry( 1000, 3);...【详细内容】
2021-12-15  程序员阿龙    Tags:Curator   点击:(22)  评论:(0)  加入收藏
一、计算机网络概述 1.1 计算机网络的分类按照网络的作用范围:广域网(WAN)、城域网(MAN)、局域网(LAN);按照网络使用者:公用网络、专用网络。1.2 计算机网络的层次结构 TCP/IP四层模...【详细内容】
2021-12-14  一口Linux    Tags:网络知识   点击:(31)  评论:(0)  加入收藏
无论是在外面还是在家里,许多人都习惯了用手机连接 WiFi 进行上网。不知道大家有没有遇到过这样一种情况, 明明已经显示成功连接 WiFi,却仍然提示“网络不可用”或“不可上网”...【详细内容】
2021-12-14  UGREEN绿联    Tags:WiFi   点击:(25)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条