一、http服务的重要基础
1. 用户访问网站的基本流程
(1)初次访问 ---> 缓存(hosts)
www.baidu.com ---> 14.215.177.38 443
首先,系统会查找系统本地dns缓存hosts文件信息,确认是否存在www.baidu.com的解析记录,如果有,则得到ip并访问;否则,则会进行下一步操作
# windows查询
ipconfig /displaydns
# windows清理
ipconfig /flushdns
# linux上生成dns缓存
yum install nscd -y
systemctl start nscd
# 查看
cat /etc/hosts
# 清理dns缓存
nscd -i hosts
(2)系统会吧解析请求发送给客户端本地设置的 DNS服务器地址(称为LDNS,也叫Local DNS),若LDNS服务器的本地有对应的解析记录,则会直接返回IP地址给客户端,否则将会继续请求其他的DNS服务器。进行如下操作
(3)LDNS从DNS系统的(“.”)跟开始请求对www.baidu.com的域名解析,并对各层级的DNS服务器进行查找,最终找到对应www.baidu.com域名授权DNS服务器(企业购买域名是用于管理域名解析的服务器:对于此域名来说的 权威DNS服务器)。如果没有找到,则说明此域名没有做解析设置,网站没有架构完成。
(4)www.baidu.com的域名授权服务器会把最终IP解析记录发给LDNS
(5)LDNS接收到授权服务器发来的IP解析记录发给客户端,并且会把解析信息缓存起来,以便下次直接在本地查询,缓存记录在指定时间内(DNS TTL值)不会过期
(6)客户端接收到LDNS的解析记录,则去访问对应的ip地址。
2. http状态码简单介绍:
http状态码是用来表示web服务器响应http请求状态的数字代码。每当web客户端向web服务端发送一个http请求时,服务器端就会返回一个状态响应码
状态码 | 说明 |
100 ~ 199 | 用于指定客户端响应响应的某些动作 |
200 ~ 299 | 表示i请求成功 |
300 ~ 399 | 用于已经移动的文件,并且包含在定位头信息中指定新的地址信息 |
400 ~ 499 | 用于指出客户端的错误 |
500 ~ 599 | 用于指出服务器的错误 |
状态码 | 说明 |
200 -OK | 服务器成功返回网页,请求成功的标准状态码 |
301 -Moved Permanently | 永久跳转,请求的网页永久跳转新的位置 |
403 -Forbidden | 禁止访问,虽然请求合法,但是服务端匹配到预先设定的规则而拒绝客户端的请求。服务端权限配置不当所致 |
404 -Not Found | 服务器找不到客户端请求的页面 |
500 -Internal Server Error | 内部服务器错误。服务器遇到错误无法完成客户端的请求。一般为服务器的设置或内部程序出错。 |
502 -Bad Gateway | 坏的网管,一般为代理服务器请求后端服务时,后端服务器不可用或没有相应网关服务器。可能反向代理服务器下的节点出错 |
503 -Service Unavaiable | 服务当前不可用,可能服务器维护或超载,或者反向代理服务器后没有可提供的节点 |
504 -Gateway Timeout | 网关超时,一般为网关代理服务器请求后端服务时,后端服务器没有在特定的时间内完成请求。多数是过载导致 |
3. URL和URI简单介绍
URL :统一的资源定位符 (网页地址) ----> 唯一 地址
三部分组成:https://www.baidu.com/index.html
第一部分:协议 ,如http
第二部分:主机部分的IP地址或域名(端口),例如:www.baidu.com
第三部分:主机资源的具体地址,如文件名或目录,如www.baidu.com/index.html
其中第一部分和第二部分不可缺少,且中间用://隔开,第三部分可以省略
URI :统一资源标识符 ,用来表示某一互联网资源名称的字符串 ----> 唯一资源 https:..www,jianshu,com/p/5413fd085737
4. 网站流量度量术语
(1)独立IP(数) ---> web服务器统计到的服务IP的个数
不同ip地址的计算机访问网站时被计的从次数(一天内相同ip的客户端访问网站页面只会被记一次,时间间隔可为一天或一月,通用标准为一天),是衡量网站流量的一个重要指标。
度量:
分析web服务器的访问日志,对IP地址段去重后计数
在网站的每一个页面结尾,嵌入JS等统计程序代码,待用户即在网页后,ip会传给统计IP的服务器
第三方软件
(2)PV :页面的浏览量,点击量
Page View。页面浏览,即页面浏览量或单击量(不查看ip,客户端是否相同,只要访问页面(无论页面是否完全打开)都会被计算)。用PV衡量网站时,反应的是浏览某网站的页面数量。
度量:
分析web服务器的访问日志(排除JS,CSS几各种图片的日志信息),只计算HTML,PHP等页面数量
网站结尾嵌入的JS等统计程序代码,用户加载网页后,访问数量上传给统计pv的服务器
第三方统计工具
(3)UV :独立客户端
同一客户端访问网站被记为一个访客,一天内相同的客户端访问同一个网站只计一次。UV一般是以客户端Cookie等技术作为统计依据,实际会有误差。一台计算机可能用多人使用
度量:
通过客户端http请求报文分析,客户端的每次请求都有客户端的大量信息,如IP地址,请求发送的时间,浏览器版本,操作系统 版本等,网站服务器对此进行分析,满足一些特征的则会被认为来自同一客户端
通过Cookie鉴别:客户端第一次访问某个网站服务器时,网站服务器会给这个客户端发送一个cookie,在这个Cookie中会分贝一个独一无二的编码,记录一些访问服务器的信息,如:访问时间,页面等。客户端的cookie也有可能会被用户设置清除或手动清除。因此上两种方法只能近似得到UV。
------------------------------------------------------------------------------------------------------- 返回目录