Linux学习笔记之HTTP协议的请求和应答

本文深入探讨Linux环境下HTTP协议的工作原理,包括TCP基础、HTTP请求方法及HTTP应答状态码。同时,文章阐述了HTTP与HTTPS的区别,强调HTTPS在安全性方面的优势,如SSL加密和证书验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文以研究访问因特网上的Web服务器为例。

应用层:HTTP协议(对应传输层TCP协议)

TCP协议:传输控制协议

HTTP协议:HTTP是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。

如下图所示在因特网上访问“www.baidu.com”                   IP:通过DNS(地址解析协议)                端口号 port:80

                           

若浏览器访问失败,则不会建立连接。

1、HTTP请求方法

请求方式含义
GET申请获取资源,而不对服务器产生任何其他影响
HEAD和GET方法类似,不过要求服务器返回头部信息,而不要求传输任何实际内容
POST客户端向服务器端提交数据的方法。这种方法会影响服务器,服务器可能根据收到的数据动态创建新的资源,也可能更新原有的资源
PUT上传某个资源
DELETE删除某个资源
TRACE要求目标服务器返回原始HTTP请求的内容,它可用来查看中间服务器(比如代理服务器)对HTTP请求的影响
OPTIONS查看服务器对某个特定URL都支持哪些请求方法。也可以把URL设置为*,从而获得服务器支持的所有请求方法。
CONNECT用于某些代理服务器,它们能把请求的连接转化为一个安全隧道
PATCH对某个资源做部分修改

在这些方法中head、get、options、和 trace被视为安全的方法,因为它们只是从服务器获得资源和信息,而不对服务器进行任何修改。

2、HTTP应答

HTTP状态码和状态信息及其含义

状态类型状态码和状态信息含义
1xx信息100 Continue服务器收到了客户端的请求和头部信息,告诉客户端继续发送数据部分。客户端通常要先发送Expect:100-continue头文部字段告诉服务器自己还有数据要发送
2xx成功200 OK请求成功
3xx重定向301 Moved Permanently资源被转移了,请求将被重定向
302 Found通知客户端资源能在其他地方找到,但需要使用GET方法来获得它
304 Not Modified表示申请的资源没有更新,和之前获得的相同
307 Temporay Redirect通知客户端资源能在其他地方找到。与302不同的是,客户端可以使用原始请求相同的请求方法来访问目标资源
4xx客户端错误400 Bad Request通用客户端请求错误
401 Unauthorized请求需要认证信息
403 Forbidden访问被服务器禁止,通常是由于客户端没有权限访问该资源
404 Not Found资源没被找到
407 Proxy Authentication Required客户端需要先获得代理服务器的认证
5xx服务器错误500 Internal Server Error通用服务器错误
503 Service Unavailable暂时无法访问服务器

HTTP和HTTPS都是应用层协议。

HTTP:超文本传输协议;HTTPS:安全的超文本传输协议,在HTTP协议的基础上加入了SSL协议保证安全传输。

         这两个协议主要应用于Web浏览器和网站服务器之间传递数据,HTTP协议以明文的形式发送内容,不提供任何方式的数据加密,如果攻击者截取了web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此HTTP协议不适合传输一些敏感信息,比如信用卡号、密码等。而HTTPS为了数据安全,在HTTP协议的基础上加入SSL协议,SSL协议依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

关于HTTP和HTTPS的区别:

1)HTTPS协议需要申请CA证书,一般需要交费;

2)HTTP是超文本传输协议,信息是明文传输,HTTPS是具有安全性的SSL加密传输协议;

3)HTTP和HTTPS使用的是完全不同的连接方式,用的端口号也不一样(HTTP:80     HTTPS:443);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值