【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失效,让用户重新登录;还可以检测账号异常(用户突然与大量多数以前不聊天的人聊天)

相关推荐
春日见13 小时前
如何入门端到端自动驾驶?
linux·人工智能·算法·机器学习·自动驾驶
柒.梧.13 小时前
吃透HTTP及相关协议核心区别,从基础到进阶全覆盖
网络·网络协议·http
dys_Codemonkey13 小时前
如何在树莓派上用 VS Code 优雅直连内部的 Ubuntu 子系统/容器用来访问容器内的文件和代码?
linux·运维·ubuntu·树莓派
炸膛坦客14 小时前
Linux - Ubuntu - PC端:(五)shell 操作(终端命令,2026)→ 3)基础命令,27 个常用命令
linux·ubuntu
forAllforMe14 小时前
用STM32+LAN9252, 生成一个etherCAT 从机系统,实现数据采集功能
网络·stm32·嵌入式硬件
·醉挽清风·14 小时前
学习笔记—Linux—文件IO
linux·服务器·学习
程序员小寒14 小时前
前端性能优化之白屏、卡顿指标和网络环境采集篇
前端·javascript·网络·性能优化
宁波阿成15 小时前
OpenClaw 在 Ubuntu 22.04.5 LTS 上的安装与问题处理记录
java·linux·ubuntu·openclaw·龙虾
上海合宙LuatOS15 小时前
LuatOS核心库API——【 string】字符串操作
运维·服务器·物联网·junit·硬件工程·信息与通信·嵌入式实时数据库
徐子元竟然被占了!!15 小时前
Linux的cat
linux·运维·服务器