网站建设 数据归属,dedecms 图片网站,wordpress主题Qinmei,上海地产网站建Ans自动化流程 1.网站集群核心协议#xff1a;HTTP
1.1概述
web服务#xff1a;网站服务#xff0c;网站协议即可.
协议#xff1a;http协议,https协议
服务#xff1a;Nginx服务#xff0c;Tengine服务....1.2 HTTP协议
http超文本传输协议#xff0c;负责数据在网站…Ans自动化流程 1.网站集群核心协议HTTP
1.1概述
web服务网站服务网站协议即可.
协议http协议,https协议
服务Nginx服务Tengine服务....1.2 HTTP协议
http超文本传输协议负责数据在网站与客户间互相传输(客户要页面网站给页面.)超文本传输协议Hyper Text Transfer ProtocolHTTP是一个简单的请求-响应协议它通常运行在[TCP]之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
2发展
http版本http0.9/1.0http1.1http2.0http3.0共同点请求-响应请求-响应请求-响应请求-响应区别短连接(耗费服务端资源)长连接(不会立即断开连接(会话)保持断开)长连接效率更高仅支持https……tcptcptcpudp
tcp3次握手,建立连接.
发出请求要页面,服务端给你响应页面.
tcp4次挥手,断开连接.http1.1 vs 2.0 速度区别http1.1 vs 2.0 速度区别
3HTTP请求与响应
4HTTP请求详解 ahttp请求概述
HTTP请求报文(数据包)内容携带用户的基本信息浏览器版本携带用户的请求信息http协议版本域名请求文件及路径还有一些额外信息...curl -v www.baidu.com或者通过wireshark抓包
这里通过wget --debug www.baidu.com获取请求报文DEBUG output created by Wget 1.14 on linux-gnu.URI encoding “UTF-8”
Converted file name index.html (UTF-8) - index.html (UTF-8)
Converted file name index.html (UTF-8) - index.html (UTF-8)
--2023-11-08 02:23:05-- http://www.baidu.com/
正在解析主机 www.baidu.com (www.baidu.com)... 120.232.145.144, 120.232.145.185, 2409:8c54:870:28:0:ff:b049:5cef, ...
Caching www.baidu.com 120.232.145.144 120.232.145.185 2409:8c54:870:28:0:ff:b049:5cef 2409:8c54:870:2a:0:ff:b0ae:1bcf
正在连接 www.baidu.com (www.baidu.com)|120.232.145.144|:80... 已连接。
Created socket 3.
Releasing 0x0000000002080cb0 (new refcount 1).---request begin---
GET / HTTP/1.1
User-Agent: Wget/1.14 (linux-gnu)
Accept: */*
Host: www.baidu.com
Connection: Keep-Alive---request end---
已发出 HTTP 请求正在等待回应...
---response begin---
HTTP/1.1 200 OK
Content-Length: 2381
Content-Type: text/html
Server: bfe
Date: Tue, 07 Nov 2023 18:23:06 GMT---response end---
200 OK
Registered socket 3 for persistent reuse.
长度2381 (2.3K) [text/html]
正在保存至: “index.html” bhttp请求-起始行 请求办法: 用户如何访问网站(上传,下载)
http请求办法GET请求下载一般对应看POST请求上传一般对应的是登录“上传图片视频头像”HEAD请求只查看响应头部信息(服务端)一般应用检查网站是否可以访问“查看服务端信息”
URL:统一资源定位符,url地址.网址.用于让用户找出网站及资源的位置.
URI:统一资源标识符:正常来说URI范围会更广泛. web服务器中uri仅仅表示域名/(斜线后面的内容)http协议版本 http1.0/1.1 请求起始行核心
请求方法: GET/POST/HEAD
URI:知道URL哪一部分即可c) http请求-请求头
提供客户端的基本信息浏览器访问域名User-Agent: Windows NT 10.0; Win64; x64User-Agent:用户的客户端(用户使用什么访问的网站
谷歌浏览器信息
#windows
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36#苹果
mac/ios#移动设备
iphone/androidHost: www.baidu.com用户访问域名部分
浏览器调试
1.打开网站与页面 2.找出 请求起始行信息和请求头信息 3.浏览器F12功能
5http响应详解
http响应报文中主要显示的是服务端的信息服务端是否有这个文件文件类型..服务端基本信息服务名字版本..ahttp响应起始行 http状态码
服务端发送给客户端,表示索要资源的状态(有/没有)应用场景: 排错与监控分析网站情况.
http状态码分类含义2xx正常找到了有这个这个文件存在…3xx正常搬家了跳转4xx错误客户端原因5xx错误服务端原因
http常见错误码含义200表示正常,索要的内容已经得到,上传成功.301 Moved Permanently永久跳转302 Found或Moved Temporarily临时跳转304 Not modified用户访问的是浏览器缓存.浏览器访问网站的时候,用户访问的是缓存.403 Forbidden拒绝访问/权限拒绝.一般是网站权限设置网站首页文件问题404 Not Found没有这个文件/目录, 你访问的资源服务器的站点目录上没有. 用户访问写错了. 网站配置文件.500 Internal ServerError服务器内部错误原因一般是服务端配置文件selinux开启服务模块没安装…一般配合服务的错误日志一起查看502 Bad GateWay网关错误一般在负载均衡代理服务器中出现后端的节点都挂了(无法访问)503 Service Unavaliable服务临时不可用故障后端节点因为负载高导致临时不可用显示这个提示.系统升级网站升级的时候可以显示这个状态码504 Gateway Timeout与上面类型临时不可用网络负载… 状态码大全 Server: web服务器使用的是什么:nginx,tengine 6http请求与响应小结
应用nginx相关web服务排错必备.面试常问.
http请求报文结构与核心内容http请求起始行请求办法 urlhttp请求头中User-Agent客户端浏览器Host域名
http响应报文结构响应报文起始行状态码响应报文头部Server:什么web服务1.3 用户请求与http协议
面试题用户访问网站流程/介绍公司网站架构/介绍你公司app数据流
1.用户输入域名域名进行DNS解析得到域名的ip2.tcp3次握手ip端口80/443) 建立连接3.客户端向服务端发出http请求报文: 请求起始行,客户端信息4.服务端收到请求后进行处理(未来可以讲解网站架构).5.服务端给客户端发出http响应报文: 响应起始行,服务端信息6.tcp 4次挥手,断开连接 1.4网站核心指标
衡量网站访问情况的一些指标.
网站的访问情况指标含义应用如何计算IP访问你网站的ip数量(公网ip)分析用户访问情况,只看这个指标容易估算访问量的小了.统计访问日志对ip去重.PVPage View页面访问量(每个页面被访问的次数)分析用户访问情况的时候只看这个指标容易导致估算过大统计日志行数UVUnique Vistor独立访客数量(用户)分析用户访问情况的时候,相对准确些.统计的加上客户端的浏览器类型…未来通过第三方插件实现DAUDaily Active User日活:日活跃用户.(app)用于分析app活跃度通过代码与数据库分析MAU月活:月度活跃用户.用于分析app活跃度.通过代码与数据库分析.
如何统计这些指标ip,pv,uv,通过日志统计.一般的统计方法,第3方插件/代码,进行统计,比如:百度,谷歌统计.通过开源统计工具: matomo(原名piwiki) 测试网站:https://demo.matomo.org查询网站访问情况https://alexa.chinaz.com2.网站核心WEB服务: Nginx
2.1 概述
网站架构中的WEB服务.
web服务(网站服务)也可以叫做WEB中间件.
Nginx : Engine X,俄罗斯人开发出来.被F5(硬件负载均衡企业)收购.
Apache: web服务.2.2 WEB中间件
WEB中间件特点官网Nginx高性能配置简单要求对http://nginx.orgTengine淘宝对ngx二次开发,增加内置功能,优化.http://tengine.taobao.orgOpenResty对ngx进行二次开发,lua的web服务.https://openresty.orgTomcat主要处理JAVA语言http://tomcat.apache.orgapacheweb服务目前应用较少http://httpd.apache.org
2.3Nginx-特点
1Nginx功能
nginx作为web服务.
nginx作为负载均衡与代理服务. (lvs,haproxy)
nginx作为缓存服务.
nginx安全功能.2Nginx特点
1.支持高并发能支持几万并发连接(特别是静态小文件业务环境)
2.资源消耗少在3万并发连接下开启10个Nginx线程消耗不到200MB内存
3.可以做HTTP反向代理及加速缓存即负载均衡功能。内置对RS节点服务器健康检查功能这相当于专业的Haproxy软件或者lvs的功能
4.具备squid等专业缓存软件等的缓存功能
5.支持异步网络IO事件原型epoll(linux 2.6)3Ngx vs Apache
ginx使用的是一种异步网络IO模型。
Apache使用的是一种同步的网络io模式。同步网站处理慢。 用户发出请求网站立刻处理如果不处理客户排队或丢弃。
异步网站处理快一般利用缓存实现。 用户发出请求网站不立刻处理网站找个地方把请求存放起来然后网站一个一个快速处理。。步目标通过缓存队列把用户请求临时存放减轻用户大量访问对服务器要求。网站优化的一句话缓存无处不在。su-幼儿园叔叔。
su-同步模式 挨个去问小朋友是否要去洗手间。
su-异步模式 画个圈圈需要去洗手间的小朋友请进入圈中su定时把圈里的带到洗手间。su-舍管大爷(女生)郑同学来女朋友。
su-同步模式 苏大爷带着郑同学一个一个寝室找。
su-异步模式 苏大爷拿出本本说你要找的人叫啥根据本子找出寝室然后找人。4Ngx vs Tengine Tengine需要编译安装。
NgxTengine安装方式yum/rpm/编译编译安装.使用增加额外功能编译安装。Tengine编译安装.软件包中自带很多常用软件功能。使用方法错误提示优化。最新的是基于nginx 1.18.0.使用使用方便错误提示默认的。使用方便错误提示优化。版本新版本。1.20.2最新的是基于nginx 1.18.0. 2.4 Ngx版本选择
1.稳定版本。 (偶数)2.距今6个月-1年版本。1.18 2020年 1.14 2018年3.日常搜搜准备要用的版本的漏洞情况 nginx 1.20.2 漏洞
2.5 Ngx急速使用指南
nginx yum安装
CentOS 7的epel源中有nginx 1.20.1 #旧的。
手动在linux配置nginx源1.20.2 1.21.xxx安装过程
1.配置yum源
cat nginx.repo
[nginx]
baseurl http://nginx.org/packages/centos/$releasever/$basearch/
enabled 1
gpgcheck 0
name nginx stable repo#安装
yum install -y nginx#安装并配置自启动
3.systemctl start nginx
4.systemctl enable nginx#查状态以及端口和线程
5.systemctl status nginx
6.ss -lntup|grep nginx
7.ps -ef|grep nginx总结
1.HTTP请求报文结构和核心内容. ⭐⭐ ⭐ ⭐ ⭐
2.HTTP响应报文结构和核心内容.⭐⭐ ⭐ ⭐ ⭐
3.用户访问网站流程⭐⭐ ⭐
4.网站访问量指标.知道熟悉常见WEB中间件web服务Nginx vs Apache 同步vs异步⭐⭐ ⭐ ⭐
5.部署nginx(手动配置yum源)安装nginx启动nginx
6. 常用命令查看端口查看进程curl/wget