【Linux】应用层协议

目录

HTTP协议

HTTP的状态码

HTTP常见方法

​编辑

短连接和长连接

cookie

session


HTTP协议

1、url:

https代表端口号;www.baidu.com是ip;后续的是Linux机器下的某个服务器的资源的具体的路径。

ip定位主机,路径定位文件

2、http协议:在在全网当中,特定主机下,云服务器中,特定路径下去定位一个文件,然后通过协议把这个文件返回给客户端。

3、不管是图片、视频等等,都是文件。简单来说,Http协议就是传文件的

4、http提供的短服务

5、要是用户请求的资源不存在?或者错误?-->response的状态码

HTTP的状态码

1、重定向

临时重定向:当前跳转到其他网页后,还会跳回来。不改变任何信息,登录跳转,页面跳转之类的工作。

eg.牛肉店面告示:由于修路,暂时搬到西边,那么下一次还会去原先的店看一下,因为告示是临时的,不确定是否路已修好。

永久重定向:跳转到其他网页之后,不会跳回来。网站更换域名/更换网址,老用户就会收到重定向的地址。

eg.牛肉面的店直接搬到西门,是永久性的。

下面就是客户端访问一个页面的重定向过程,第一次访问s1失败,s1会返回一个30x的状态码,告诉客户端应该自动重定向到Location的新的位置,客户端会自动去找的,也就是重定向的过程。

HTTP常见方法

短连接和长连接

短连接:http1.0每次请求都要建立一个链接

长连接:http1.1建立一次连接之后,可以请求多次,返回多次

http只关心请求,不关心链接情况,只要HTTP能处理多个请求,那它就是长连接,否则,就是短连接。底层由TCPServer去关闭链接,所以HTTP本身其实是无连接的。

http的无状态:不记录用户历史访问过的页面,所以,只要用户刷新浏览器的首页,服务器就得提供一次服务。

引入:那不可能用户每次点击一个链接都要重新登录一次,所以浏览器做了工作,用到了cookie。

cookie存储用户的账号和密码,单纯使用cookie也是不安全的,攻击者盗取用户密码信息等进行违法操作(银行转账等)

解决办法:cookie+session

session

在服务器端为每个用户建立一个session,session里面存储用户的用户名及密码等信息,最终返回session id给用户,用户cookie就会保存session id,用户拿着session id再次进行访问就行。但是攻击者要是获取了session id不是还能进行访问呢吗?但是注意,此时就没有泄露用户信息了,只是session id的泄露,当然,http还有一些辅助方案,比如通过ip去检测账号是否异地登录,要是发现了可以让session id失效,让用户重新登录;还可以检测账号异常(用户突然与大量多数以前不聊天的人聊天)

相关推荐
2401_8920709816 小时前
【Linux C++ 日志系统实战】LogFile 日志文件管理核心:滚动策略、线程安全与方法全解析
linux·c++·日志系统·日志滚动
lwx91485216 小时前
Linux-Shell算术运算
linux·运维·服务器
somi716 小时前
ARM-驱动-02-Linux 内核开发环境搭建与编译
linux·运维·arm开发
双份浓缩馥芮白16 小时前
【Docker】Linux 迁移 docker 目录(软链接)
linux·docker
为何创造硅基生物17 小时前
ESP32S3的RGB屏幕漂移问题
网络
好运的阿财17 小时前
process 工具与子agent管理机制详解
网络·人工智能·python·程序人生·ai编程
黄昏晓x17 小时前
Linux ---- UDP和TCP
linux·tcp/ip·udp
路溪非溪17 小时前
Linux驱动开发中的常用接口总结(一)
linux·运维·驱动开发
此刻觐神17 小时前
IMX6ULL开发板学习-01(Linux文件目录和目录相关命令)
linux·服务器·学习
2401_8920709817 小时前
【Linux C++ 日志系统实战】高性能文件写入 AppendFile 核心方法解析
linux·c++·日志系统·文件写对象