应用层: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访问知乎。
本文来自博客园,作者:曼路的个人博客,转载请注明原文链接:https://www.cnblogs.com/manlujun/p/15790195.html