HTTP:HyperText Transfer Protocol的简称,超文本传输协议 是什么:W3C组织推出的浏览器与Web服务器之间数据交互需遵循的一种规范 怎么用:专门用于定义浏览器与Web服务器之间数据交换的格式 HTTP之所以在Web开发中占据重要的位置 支持主流软件架构:支持B/S、C/S软件架构。 简单快速:客户端向服务器请求服务时,只需传送请求方式和路径即可。常用的请求方式有GET、POST等,每种方式规定了客户端与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,通信速度快。 灵活:HTTP允许传输任意类型的数据,传输的数据类型由Content-Type标记。 PHP处理过程 当用户通过HTML页面输入数据并提交表单后 输入的内容就会从浏览器传送到服务器 经过服务器中的PHP程序处理后 再将处理后的信息返回给浏览器 当浏览器向Web服务器发送一个请求时,Web服务器会对请求做出处理,并返回处理结果。 在这个交互过程中,浏览器是通过URL地址来访问服务器的,并且数据在传输过程中需要遵循HTTP。 当数据传输到Web服务器时,Web服务器中的PHP程序会对数据进行处理,然后将处理好的数据返回给浏览器。 Web服务端处理 当请求到达服务器后,Apache就会判断客户端请求的是静态资源还是PHP文件。 如果请求的是静态资源如HTML、CSS、JavaScript和图片等文件,Apache就直接在服务器目录下获取这些文件。 如果请求的是PHP文件,Apache则会将其交给PHP模块来处理,PHP模块将处理得到的结果返回给Apache。 返回HTTP响应数据 Apache将获取到的资源(包括直接获取的静态资源和PHP处理的结果)通过HTTP响应发送到客户端浏览器。 HTTP请求消息——请求行 HTTP请求消息——请求头 请求头位于请求行之后,主要用于向服务器传递附加消息。 例如,浏览器可以接受的数据类型、压缩方法、语言以及系统环境。 通过POST方式提交表单时,浏览器会将用户填写的数据放在实体内容中发送。
使用POST方式提交表单 Content-Type消息头字段会自动设置为“application/x-www-form-urlencoded”,表示以URL编码的表单 Content-Length消息头会自动设置为实体内容的长度(25字节) HTTP相应消息--响应状态 响应状态码:表示服务器对客户端请求的各种不同的处理结果和状态 组成:响应状态码由一个三位十进制数表示 分类:响应状态码共分为5个类别,通过最高位的1~5来分类   HTTP响应消息--响应头 响应头位于响应状态行的后面,用于告知浏览器本次响应的一个基本信息,包括服务程序名、内容的编码格式、缓存控制等。   HTTP的请求头和响应头是浏览器与服务器之间交互的重要信息,由浏览器和Web服务器自动处理,通常不需要人为干预。 但有时开发者会需要手动更改一些响应消息,以实现网站项目的某些功能需求,或者进行浏览器缓存方面的优化。 在PHP中,通过header()函数可以自定义响应消息头 // 设定编码格式 header('Content-Type: text/html; charset=UTF-8'); // 响应404消息 header('HTTP/1.1 404 Not Found'); // 页面重定向 header('Location: login.php'); HTTP响应消息--实体内容 服务器为了告知浏览器内容类型,会通过响应消息头中的Content-Type来标识 例如,网页的类型通常是“text/html; charset=UTF-8”,表示内容的类型为HTML,字符集是UTF-8,其中“text/html”是一种MIME类型表示方式  