HTTP协议
发布日期:2022-02-08 04:20:40 浏览次数:2 分类:技术文章

本文共 1840 字,大约阅读时间需要 6 分钟。

HTTP协议

HTTP:HypeTextTransfer Protocol的简称,超文本传输协议

是W3C组织推出的浏览器与Web服务器之间数据交互需遵循的一种规范
专门用于定义浏览器与Web服务器之间数据交换的格式

1.什么是HTTP

  • HTTP是基于“请求”和“响应”的协议
  • 当客户端与服务器建立连接后,由客户端(浏览器)向服务器发送一个请求,被称作HTTP请求
  • 客户端与服务器建立连接后,服务器收到请求后会做出响应,称为HTTP响应

HTTP之所以在Web开发中占据重要的位置

  • 支持主流软件架构:支持B/S、C/S软件架构
  • 简单快递:客户端向服务器请求服务时,只需传送请求方式和路径即可。常用的请求方式有GET、POST等,每种方式规定了客户端与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,通信速度快
  • 灵活:HTTP允许传输任意类型的数据,传输的数据类型由Content-Type标记。

2.查看HTTP消息

HTTP请求消息的概念: 当用户浏览器中访问某个URL地址/单击某个超链接或者提交表单时,浏览器都会向服务器发送请求数据,即HTTP请求消息

HTTP响应消息的概念: 服务器接收到请求数据后,将处理后的数据回送给客户端,这就是HTTP响应消息。
HTTP消息的概念: HTTP请求消息和HTTP响应消息统称为HTTP消息
在这里插入图片描述

3.PHP处理过程

在浏览器与服务器的交互过程中 ,Web服务器通过HTTP协议与浏览器进行交互,PHP只用于处理动态请求。

  • 当用户通过HTML页面输入数据并提交表单后
  • 输入的内容就会从浏览器传送到服务器
  • 经过服务器中的PHP程序处理后
  • 再将处理后的信息返回给浏览器
    在这里插入图片描述
  • 当浏览器向Web服务器发送一个请求时,Web服务器会对请求做出处理,并返回处理结果
  • 在这个交互过程中,浏览器是通过URL地址来访问服务器的,并且数据在传输中需要遵循HTTP
  • 当数据传输到Web服务器时,Web服务器中的PHP程序会对数据进行处理,然后将处理好的数据返回给浏览器
    HTTP请求
    当在客户端浏览器输入URL地址后,就会向指定服务器发起HTTP请求。在请求的同时,会附带请求消息头、请求消息体等相关信息
    Web服务端处理
    当请求到达服务器后,Apache就会判断客户端请求的是静态资源还是PHP文件。
  • 如果请求的是静态资源如HTML、CSS、Javascript和图片等文件,Apache就直接在服务器目录下获取这些文件。
  • 如果请求的是PHP文件,Apache则会将其交给PHP模块来处理,PHP模块将处理得到的结果返回给Apache。
    返回HTTP响应数据
  • Apache将获取到的资源(包括直接获取的静态资源和PHP处理的结果)通过HTTP响应发送到客户端浏览器。
    浏览器显示
    浏览器将服务器放回的资源,包括HTML、CSS、Javascript和图片下载到本地,进行解析并显示

4.HTTP请求消息

每个请求头都是由头字段名称和对应的值构成,中间用冒号“:”和空格分隔。这些头字段大部分是HTTP规定的,每个都有特定的用途,一些应用程序也可以添加自定义的字段。

在这里插入图片描述
1、HTTP请求消息—请求行

  • 请求行共分为3个部分,分别是请求方式(GET)、请求资源路径(/index.php)和HTTP协议版本(HTTP/1.1)
  • 请求方式有许多种,GET是浏览器打开网页默认使用的方式
  • 请求资源路径,是指当访问“
    在这里插入图片描述

2.HTTP请求消息—请求头

请求头位于请求行之后,主要用于向服务器传递附加消息。
例如,浏览器可以接受的数据类型、压缩方法、语言以及系统环境。
在这里插入图片描述
3.HTTP请求消息—实体内容
通过POST方式提交表单时,浏览器会将用户填写的数据放在实体内容中发送。

//提交表单后,发送的HTTP请求消息如下。POST /test.php HTTP/1.1Host: localhostContent-Type: application/x-www-form-urlencodedContent-Length: 25name=test&password=123456

使用POST方式提交表单

  • Content-Type消息头字段会自动设置为“application/x-www-form-urlencoded”,表示以URL编码的表单
  • Content-Length消息头会自动设置为实体内容的长度(25字节)

转载地址:https://blog.csdn.net/qq_41254184/article/details/89066927 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:PHP与Web页面交互
下一篇:PHP基础考试错点

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年03月23日 06时03分33秒