应用层:http请求报文和响应报文

1.http请求报文

请求报文由请求行、报文头、空行、报文体组成。

请求行可分为请求方法、请求URL、HTTP协议及版本。


举例1:

 GET / HTTP/1.1\nHost: 220.181.38.251\nConnection: close\n\n

举例2:

 GET / HTTP/1.1
 Host: 220.181.38.251
 Connection: close
 

2. http响应报文

响应报文由响应行、响应头、空行、响应体组成。

响应行可分为HTTP协议及版本、状态码、状态描述。

举例:

HTTP/1.1 200 OK
Date: Tue, 11 Jan 2022 12:35:43 GMT
Server: Apache
Last-Modified: Tue, 12 Jan 2010 13:48:00 GMT
ETag: "51-47cf7e6ee8400"
Accept-Ranges: bytes
Content-Length: 81
Cache-Control: max-age=86400
Expires: Wed, 12 Jan 2022 12:35:43 GMT
Connection: Close
Content-Type: text/html

<html>
<meta http-equiv="refresh" content="0;url=http://www.baidu.com/">
</html>

3.要点

3.1.unix和windowns操作系统在回车符和换行符上区别

关于回车符和换行符的区别,感兴趣的可以去了解一下电传打字机的东东,这里只说结论。

unix系统下“<回车符><换行符>”是“\n”。windowns系统下“<回车符><换行符>”是“\r”“\n”。

因此在使用代码组装程序的时候必须要注意到这个区别。

3.2.在使用host时若要使用IP,则建议使用百度的IP

为什么建议使用百度的IP,而不使用其他网站的IP呢,比如知乎的IP,反正域名都是会被解析成IP的?

要解决这个问题就必须要提到CDN了,为了当我们访问某个网站的资源时,要想提高响应速度,我们可以把资源分布在各个地方,把离客户端近的资源传给客户端。可以使用京东快递来类比,为了让你尽快地拿到商品,京东就在你的附近修建了一个仓库,你在京东下单了,就把离你近的仓库中的商品送给你。

同时由于IPV4的数量有限,因此很多网站在发布的时候,很有可能是几个网站共用一个IP地址,但是百度有钱啊,因此一个IP对应一个CDN服务器,而知乎的IP对应多个网站,因此不可使用知乎的IP访问知乎。

posted @ 2022-01-11 21:32  曼路的个人博客  阅读(294)  评论(0编辑  收藏  举报