Web基础和Http协议

web基础与http协议

一、web

1、web、http(s)

web:就是网页,打开网站展示的页面。(全球广域网---world wide web,又叫万维网)分布式图形信息系统

http:超文本传输协议

https:(加密的)超文本传输协议

2、分布式

分布式图形信息系统

!

概念:计算机系统或者是应用程序,分布在多台计算机或者服务器上。通过计算机网络互相通信和协作,共同完成任务或者共同对外提供一致的服务。

设计目标:把工作负载分散到多个节点上。每个节点既是一个整体,也是一个独立的运行体。这种设计提供了高可用的架构,允许分布式节点的服务器出现故障。

3、集群

概念:建立在分布式的基础之上,把多台计算机或者是服务器连接在一起,作为一个整体,形成一个单一的计算资源,也是通过网络连接,共享任务和资源负载,实现高性能和高可用。这些计算机或者服务器,他们的性能基本一致,运行的服务或者应用程序都一致。

目标:通过增加节点和减少节点实现弹性伸缩,提高处理能力和容量。(数据中心、web服务器都是出于集群,大数据处理等等)

4、web的组成结构

网页:纯文本格式的文件,HTML语言(超文本标记语言),是一种规范,也是一种标准。通过标记符号来显示网页中的各个部分。一般来说,我们访问的页面都是.html或者.htm(也是网站的首页)浏览器把html语言进行翻译,形成用户看到的页面》

网站:由一个一个的页面组成,是一个网页的组合体。

域名:访问网站或者浏览页面时输入的地址,也可以叫网址。(www.baidu.com-------与ip地址做映射)

http\https:用来传输网页的通信协议,https就是加密,是一种客户端和服务端之间通信、交互的标准和规范。

URL:万维网的寻址系统,是网站在互联网上的唯一标识。

https://show,bilibili.com/platform/home.html?msource=pc web&spm id from=666.5.0.0

URI:/platform/home

超链接:把网站中的不同网页连接起来

发布:把制作好的网页部署到互联网上,可以分为内和外

内部访问:不提供互联网的对外访问,只能内部局域网访问

外部访问:互联网上公开的页面,所有人都可以访问的页面

5、web的版本

web1.0:网页编辑好之后,用户直接阅读内容,用户无法对页面进行编辑、更改、创建其他内容(网站到用户----单向的)

web2.0:用户也是访问编辑好的页面,但是这个页面用户可以对其进行二次开发(包括分享、弹幕、点赞、送礼等等都是web2.0的新特征),是一个开发的平台。

静态页面:就是标准的HTML文件,文件的扩展名.html或者.htm,就是纯文本、图像、声音、动画等等组成的一个页面。网站建设的基础,早期的网站都是静态页面,没有后台数据库,没有其他程序,也无法交互的页面,更新起来比较麻烦,展示型网站,更新内容比较少的网站。他的URL地址是固定的,内容相对稳定,容易被搜索引擎检索,页面的浏览速度比较快,没有后台程序,不需要连接数据库,页面打开比较快。

动态页面:网页URL不固定,用户可以和后台进行交互(数据库),在动态页面的URL里面有一个符号" ?"。动态页面用的是PHP、JSP、python、ruby

bash 复制代码
动态页面的特点:
1.1 交互性,用户可以对网站发布的页面进行二次创造
1.2 自动更新
1.3 页面的内容会实时的发生变化

静态和动态页面的区别

1.1 静态页面:看

1.2 静态页面:交互

二、http协议和返回码

1、http和https

http:超文本传输协议

https:(加密的)超文本传输协议

bash 复制代码
http 0.9
http 1.0 基本淘汰
http 1.1 目前的主流
https 2.0 加密的协议   新一代的加密协议,是http1.1的升级版。

2、http1.0和http1.1之间的区别?

bash 复制代码
#缓存机制#
缓存可以把用户的一个行为和操作,保存下来,下次访问可以保留这些状态,不需要在和web服务器进行额外的通信,提高了访问效率。缓存有的是保存在本地,有的是保存在web服务器,现在得缓存基本是保存在用户的本机(缓存由浏览器保存),缓存的保留时间,一般来说是30天到180天,一般网站都是30天左右
http1.0只有一种缓存策略
http1.1引入更多的缓存策略
bash 复制代码
#长连接#
http1.1支持长连接,在一个tcp连接上可以传输多个http请求和响应。一次性获取页面所有内容
bash 复制代码
#带宽优化和网络连接的使用#
http1.0一次只能获取一个对象,其他对象还要继续的建立连接获取数据
http1.1 只有建立了连接,除非数据发送完毕,否则不需要为了其他的资源专门再建立额外的连接

3、http的工作方式

请求----------客户端发起

响应----------服务端发起

3.1 请求

请求的方式:GET POST

请求的内容:请求头、请求体

method:GET 请求的方式

Accept:客户端获取的页面

Accept-Enocoding :客户端可以接受的编码方式

Accept-Language:客户端可以接受的语言类型

Cache-Control:客户端需要页面缓存的时间

Connection:keep-alive 客户端通知服务端,服务端在数据传输完毕之后不要马上关闭连接,让连接保持一段时间(60s、120s、180s)

Host:客户端请求的ip和端口

User-Agent:客户端的请求工具,用什么浏览器发起的请求以及发起的系统是什么

3.2 响应

响应----------服务端发起

响应的内容:响应头、响应体

Connection:响应客户端的连接方式

Content-Encoding:响应客户端的编码

Content-Type :响应编码的类型,发送数据的类型

Date :响应的时间

Server:使用web服务的软件和版本

Strict-Transport-Security:响应客户端的缓存时间

Request Method:客户端请求方式是get(GET)

Status Code:请求收到之后,服务端对请求的响应的状态码

3.3 响应码

1xx:100-101 信息提示 一般不考虑

2xx:200-206 成功

3xx :300-305 重定向和缓存

4xx :400-415 客户端错误(客户端请求的内容或是页面不存在)

5xx:500--505 服务端错误web服务软件本身处了故障,无法响应

3.4 http常见的状态码

200:ok 请求成功

301:永久重定向,请求的页面永久的到其他页面

302 :临时重定向,网站维护时使用

304 :访问的是本地缓存

403 :用户的请求禁止访问

404 :用户请求的网页不存在

500 :内部服务错误,一般是软件层面也有可能是硬件,也可能是防火墙

4、如果出现了500,怎么来排查这个错误?

501:Bad Gateway 无效网关(防火墙,限制了转发功能)

503:service unavailable 服务不可用

504:Gateway timeout 网关请求超时

5、post方式

区别于get,get就是向服务器发送请求,请求不带任何参数,由http协议自行约定的

post也是发送数据,也是依照http协议,post会更改服务器数据。post之后会在服务器上多一条数据,或者对原数据进行修改

get的请求可以被缓存,post没有缓存

get的请求记录会保存在浏览记录(cooike),post不会被保存

get就是获取数据,post会修改数据

get的请求长度是有限制的,而且请求的字符串会显示在url当中

post请求没有长度限制,而且字符串也不再url当中显示

动态页面.jsp .js .php为结尾的文件

相关推荐
幽兰的天空1 小时前
介绍 HTTP 请求如何实现跨域
网络·网络协议·http
lisenustc2 小时前
HTTP post请求工具类
网络·网络协议·http
心平气和️2 小时前
HTTP 配置与应用(不同网段)
网络·网络协议·计算机网络·http
心平气和️2 小时前
HTTP 配置与应用(局域网)
网络·计算机网络·http·智能路由器
喜-喜2 小时前
C# HTTP/HTTPS 请求测试小工具
开发语言·http·c#
Gworg2 小时前
网站HTTP改成HTTPS
网络协议·http·https
Mbblovey2 小时前
Picsart美易照片编辑器和视频编辑器
网络·windows·软件构建·需求分析·软件需求
北顾南栀倾寒3 小时前
[Qt]系统相关-网络编程-TCP、UDP、HTTP协议
开发语言·网络·c++·qt·tcp/ip·http·udp
GZ_TOGOGO4 小时前
PIM原理与配置
网络·华为·智能路由器
7ACE4 小时前
Wireshark TS | 虚假的 TCP Spurious Retransmission
网络·网络协议·tcp/ip·wireshark·tcpdump