二、http简介

什么是请求和响应

如下图所示,我们用自己的电脑,通过浏览器【火狐、ie、chrome等浏览器】在地址栏输入自己想要访问的网站url,回车之后便能看到该网址展示的内容。这个过程就包含了目标网址的请求,远程服务器的请求处理和内容返回,浏览器收到返回内容进行展示。


二、http简介_第1张图片
请求-响应
请求url组成

例如:http://www.dtest.com/learnyii/requirements.php【我本机配置的web服务】或者https://www.yiichina.com/doc/guide/2.0/start-workflow

url包含:

  1. 协议【http/https等】
  2. ip/域名【/www.dtest.com】端口【80/8080等,默认80可以省略】
  3. uri【/learnyii/requirements.php】

网络中每一台电脑都有ip地址,如同人的身份证,能够唯一定位到这台电脑。uri则是资源路径,定位了这台电脑,再加上这个资源路径,就能找到这个资源,并将资源返回给我们的电脑。但是ip地址很难记忆,于是有了域名,一个域名对应一个ip,这个对应关系存储在一台服务器上,这个服务器被命名为dns服务器,这台服务器的任务就是解析域名为其对应的ip地址,请求是通过ip地址寻址到对应电脑的。


具体请求了什么,返回了什么
Request Headers
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Connection: keep-alive
Host: www.dtest.com
Referer: http://www.dtest.com/learnyii/
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.3

请求头携带了:可以接收的内容格式,编码,语言,连接状态,请求主机,我来自的上一个页面地址,使用的什么浏览器。

Response Headers
Connection: keep-alive
Content-Type: text/html; charset=UTF-8
Date: Fri, 15 Mar 2019 02:58:12 GMT
Server: nginx/1.15.9
Transfer-Encoding: chunked
X-Powered-By: PHP/7.2.15

响应头包含了连接状态,返回的内容类型和编码,服务端处理请求的软件和版本等

响应体



    
    Yii Application Requirement Checker