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

相关推荐
未济3 天前
linux 配置环境变量
linux
傲世仙尊3 天前
目录即文件-Ext文件系统收尾篇
linux·c语言
虎头金猫3 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
_艾伦 耶格尔.3 天前
进程间通信
linux
Liuqy-053 天前
Linux IO编程——静态库、动态库
linux
wuyk5553 天前
《WiFi 嵌入式物联网开发全套实战》| 第 16 章 ESP32 AP+STA 双模共存原理与工程坑点
网络·stm32·物联网
彧azz3 天前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
-梅3 天前
linux(8) 软硬链接
linux·运维·服务器
Wang's Blog3 天前
Java 项目实战: 外卖平台-文件下载与ServletOutputStream回写浏览器
服务器·项目开发
AIgorithmGEEK3 天前
[Linux]线程三部曲(上):一个执行流的诞生——从操作系统一路拆到 pthread_create
linux·线程·pid