导图社区 web服务器通信原理
这是一篇关于web服务器通信原理的思维导图,包括:基本知识介绍、网页浏览的流程、常见web容器。
编辑于2022-10-30 20:40:32 甘肃第1课 web服务器通信原理
基本知识介绍
常见的服务器系统
服务器是啥
24小时不关机的电脑、性能强大、且有独立公网ip
任何一台电脑有运行了服务(网站、文件传输)
服务器与客户端的区分
服务器
服务端是为了应对我的访问做出回应的东西
作用:搭建网站、让网站流程更加顺畅等
客户端
我们的电脑去访问别人,我们的电脑就叫“客户端”
作用:系统
系统
Windows
Windows 10 个人电脑系统
Windows server 服务器上用的
优势:界面和正常的Windows系统相同,图形化,任何一个人都可以简单上手
劣势:对硬件性能要求高,容易卡
小公司使用多
linux
开源(代码全公开)
(RedHat)
优势:对硬件性能要求低,512MB内存就够用
缺点:一般人用不来,需要专业人员用命令用
大公司清一色使用,客情专人维护
macos
虚拟机
虚拟机逃逸:虚拟机里的东西影响到了本机,但是这种情况很困难
如何区分三个系统
大小写,Windows操作系统不在意大小写,Linus在意大小写
例:网址中有/news/的,如果对方是Windows服务器则s的大小写都能访问到网站,如果大写访问不到,则大概率是Linus服务器
盘符,盘符是Windows操作系统特有的,Linus不存在盘符
w:C:
L: /
绝对路径与相对路径
路劲:指的是文件或者文件夹在磁盘的位置
绝对路径
所有人都能用这个地址找到你的地址
例:C:\Users\Administrator\Desktop就是一个Windows的绝对路径,因为有盘符
./当前路径
../上级路径
dos的控制 cmd指令
cd 跳转到某某地址
dir 显示当前目录
例:/Users/就是Linus的相对路径,因为没有盘符
相对路径
需要参照物的地址d
cmd
Windows系统是给普通人使用的,会有很多限制。而用cmd限制更少,更加好用
dir 查看
cd 跳到***目录
cd./ 跳到当前目录 写相对路劲时会有用
cd../ 跳到上级目录
shutdown -t 0 -s 关机
tasklist 任务管理器查看用行的什么进程
cmd命令大全:
bbs.zkag.cn/t/5304.html
linux命令大全:
runoob.com/linux/linux-command-manual.html
名词
IP
正统定义:互联网协议地址,缩写为IP地址,是分配给用户上网使用的网际协议的设备的数字标签
老师理解:ip实际上就是地址,如果我想到你家去玩,那么我肯定要知道你家住在哪里,ip实际上就是你电脑的地址,在网络上可以通过ip来访问你的计算机。
IP实际上就是地址,互联网上我电脑的地址,是分配给用户上网使用的网际协议设备的数字标签,在网上可以通过IP来访问你的计算机
IP有上线ipv4(主要在用):0.0.0.--255.255.255.255 (公网IP)
有2的23次方(25.68亿个地址)
ipv6现在在推广
ipv8
ip的内网与公网
内网
假设你住的是一个大楼,比如401房间,那么只有同一大楼(接入同一个路由器、交换机的计算机,才能有的ip)内的人才能通过地址找到你
某个内部存在地址(同一个路由器),多个内网设备用一个公网
内网ip的查询:cmd = ipconfig
路由器分配的,不需要钱
当不知道ip是什么时放在百度里搜
公网
x省x市x区x街道x号,别人看了这个地址就知道你家
(外网):真实存在的地址。某省某市
百度“ip”就有本机的公网ip
运营商分配的,是需要钱的
区分公网与内网
这些地址内就是内网
10.0.0.0-255.255.255.255
172.16.0.0-172.31.255.255
192.168.0.0-192.168.255.255
怎么查看自己的内网ip 可以使用cmd命令 ipconfig 外网ip可以通过百度(或https://www.ip138.com/)
如果你在你的电脑上搭建一个网站,然后把公网ip地址和内网ip地址发给我,我能访问到吗? 不一定能 公网ip地址:收货地址,A大厦 (是否在路由器上设置过 这个设置叫“映射”) 内网IP地址:A大厦的某个房间 内倒外不防护,外到内会防护 能找到大厦不一定能进到房间,门卫不让你进
vpn
单独的隧道,我和你建立点对点的连接,我依靠你在与其他进行连接。比如你的内网里有个图书馆,我想去访问,但是我和你不处于同一个内网,所以我访问不到,但是你的电脑搭建了vpn 的服务端,我通过VPN连接你的电脑,你的电脑代替我发起请求连接你内网里的图书馆,这样就能通过你来访问图书馆
类似电话中转站
域名
百度的网址:www.baidu.com -- ip:14.215.177.38
本质是方便记忆
DNS协议
建一张表格,把全世界所有的域名和ip做对应,当你访问域名的时候,其实就是访问他的ip
域名是谁控制dns,就从谁那买,越短越便宜,越长越贵
任何域名都可以指向不同ip
百度搜:域名购买,可以看域名的价值等信息
买域名需要备案
.xyz的域名非法站有很多
分类
顶级域名
.com
商
.edu
教
.gov
政
.mil
军
一级域名
zkaq.cm
花钱
二级域名
www.zkaq.cn
多级域名
a.b.c.zkaq.cn
端口
门,不同的门对应不同的应用
端口就像电脑的接口,像USB接口,比如你需要用键盘时候,你要把键盘插入接口,端口就是类似的东西,端口主要是网络接口,比如你去访问别人网站,一般来说你实际上是去他的80端口进行通信。
我们有多少个端口妮?
有范围是从0到65535(2^16-1) 0端口是预留端口。一般不会用到 netstat -ano
电脑的端口默认情况下是固定 每个服务对应不同的端口3389(远程桌面) 445 3306 1433 80 (端口网页)
计算机是大房子,与外界交互就需要门,一台电脑65535个门(端口),比如奴才有小门,主人走正门,客厅走旁门等等,每个门对应不同的应用不同的作用,不同服务对应不同端口
命令 cmd => netstat -ano(查看本机端口的使用情况)
低于1024端口都是Windows规定好的,高于的就是临时通信的
监听:是端口正常开放,等待别人来访问
HTTP协议
网页、网站就是HTTP(或HTTPS)协议
超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法,基本上访问网站都是使用HTTP协议
分类
HTTPS
比HTTP更安全
HTTP
区别
我访问你就如同我给你写信,我把信给信差,信差把信再给你(HTTP)
我访问你,我给你写信,我把信给信差,我怕信差偷看我的信,我就给信加密,信差把信给你,你通过解密器把信打开(https)
含义
HTTP是一个数据包
数据包的内容
GET
发起的请求方式
Host
访问的域名
User-Agent
是传参告诉别人你的浏览器是什么,是什么系统
Chrome
用的浏览器版本
网页浏览的流程
从访客角度看网页浏览器流程
1.1.1.1 baidu.com -> 网关 -> DNS表,qzone.qq.com ->IP web服务器
1、用户在浏览器输入协议://域名,如http://www.zkaq.org
2、用户浏览器通过系统 —> 向DNS服务器查询域名对应的IP地址
3、用户浏览器向查到的IP地址(Web服务器)发起HTTP请求
4、服务器分析用户请求,从中提取数据,处理后返回一个HTTP响应
5、浏览器受到响应后提取状态、协议编码、正文的有效信息,然后翻译成人类能够直观理解的图形界面并显示
常见web容器
是什么
是可以向发出请求的浏览器提供文档的程序
是一种被动程序
只有其他计算机发出的请求该容器时,容器才响应
web容器的主要功能是存储,处理和传递网页给客户,客户端和服务器之间的通信使用超文本传输协议(HTTP)进行,交付的页面最常见的html文档,除了文本内容之外,还可能包含图像,样式表和脚本
比如我去商店买东西,我不说我要什么他;
常见种类
IIS(Windows)
Apache(全平台)
Nginx(全平台)
前后端
前端是好看的代码
前端代码能看到
后端是实现的功能
正常情况下看不到后端,除非报错