Web服务器通信原理

Web服务器通信原理

一、基本知识介绍

常见服务器系统

  Linux(RedHat、CentOS、Debian、Ubuntu)

  Windows Server(Windows Serve 2008、Server 2012、Server 2016、Server 2019)

  MacOS Server-基本没见过

Windows 常见的家用办公系统有Windows 7、Windows10;Windows 服务器系统有Windows Server。

Windows和Linux的区别

Windows的路径:

Linux的路径显示:

能看到盘符的肯定是Windows。看到 / 开头一般都是Linux或者MacOS

CMD命令

过去计算机还没有现在这样美观的图形界面。通常是Dos系统,那时候人们使用电脑,都是使用cmd命令进行操作;在Windows系统中提供了CMD指令,可以让大家使用命令操作电脑。这样在渗透测试中会起到一定的作用。

简单的CMD命令;

dir 显示当前目录;

cd 进入xx目录

绝对路径和相对路径

绝对路径:就是你主页上的文件或目录在硬盘上的真正路径。

相对路径:就是相对某个基准目录的路径。包含Web的相对路径(HTML中的相对目录)

例如:

1.D:\ISO镜像\Lync-Server-2013企业版部署.pdf  ==> “Lync-Server-2013企业版部署.pdf” 就是一个绝对路径

2.https://www.cnblogs.com/061713xlhj/  这也是一个绝对路径

3.假设你要引用页面名称为test.html。它存放在www的文件夹里,那么绝对路径是D:/phpstudy/www/test.html.同时引用存在www文件夹里面的icon.jpg文件,在同一个目录下这个icon.jpg的相对路径./icon.jpg。绝对路径是D:/phpstudy/www/icon.jpg

网络简介

IP定义:互联网协议地址,缩写为IP,是分配给用户上网使用的网际协议的设备的数字标签。

说的通俗易懂的解释就是,ip实际上就是地址,如果我想到你家去玩,那么我肯定要知道你家住在哪里,ip实际上就是你电脑的地址,在网络上可以通过ip来访问你的计算机。

IP有内网和公网的概念。内网是什么,公网是什么。

举个栗子:

你家的门牌号那就是个公网地址,四川省成都市红牌楼街道12号,别人看到这个地址就能找到你家
内网地址是什么呢,假设你住的是一个大楼,比如住503房间,那么只有同一个大楼里面的人才能够通过503这个地址找到你的房间吧。其他人根本不知道是哪里的503房间对吧

公网地址是运营商分配的,内网地址是路由器分配的。
如何判断地址是公网还是内网?这些地址就是内网地址了

10.0.0.0~10.255.255.255 |172.16.0.0~172.31.255.255 |192.168.0.0~192.168.255.255

对于自己而言,如果你是本机访问本机,那么127.0.0.1或者localhost都代表着自己
怎么查看自己的内网ip 可以使用cmd命令 ipconfig 外网ip可以通过百度

域名:域名实际上是为了方便记忆发明的一个字符型标识。

cnblogs.com news.cnblogs.com
一级域名 二级域名

DNS:将域名转化为IP的一个协议。

14.215.177.39  baidu.com

因为有DNS协议的参与,输入baidu.com打开的也没和输入14.215.177.39打开的页面是一样的。

端口:

端口就像电脑的接口,像USB接口,比如你需要用键盘时候,你要把键盘插入接口,端口就是类似的东西,端口主要是用于网络的接口,比如你去访问别人网站,一般来说你实际上是去他的80端口进行通信。一共有65536(2^16-1)个端口,0端口是预留端口。一般不会用到
在Windows系统CMD命令提示符窗口,输入netstat -an即可查看

红色框内就是端口号

电脑的端口默认情况下是固定 每个服务对应不同的端口

如3389 445 3306 1433 80 443

80端口是为HTTP(HyperText Transport Protocol)即超文本传输协议开放的,此为上网冲浪使用次数最多的协议,主要用于WWW(World Wide Web)即万维网传输信息的协议。
443端口即网页浏览端口,主要是用于HTTPS服务,是提供加密和通过安全端口传输的另一种HTTP。
445端口是一个毁誉参半的端口,有了它我们可以在局域网中轻松访问各种共享文件夹或共享打印机。
1433端口是SQL Server默认的端口,SQL Server服务使用两个端口:TCP-1433、UDP-1434。
3306端口是MySQL的默认端口。
3389端口是Windows 2000(2003) Server远程桌面的服务端口,可以通过这个端口,用"远程桌面"等连接工具来连接到远程的服务器。

HTTP协议

http协议超文本传输协议(HTTP,HyperText Transfer Protocol),是互联网上应用最为广泛的一种网络协议。

设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法,基本上访问网站都是使用HTTP协议。HTTP协议我们从下面这个HTTP通信数据包来理解。

GET / HTTP/1.1        #GET 是请求方式 HTTP/1.1 是协议版本
Host: www.baidu.com     #Host是访问的域名
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36  #User-Agent传参,告诉别人你的浏览器是什么。是什么系统。

二、网页浏览流程

从访客角度看网页浏览流程

一、开始用户在浏览器输入协议://域名,如 https://www.baidu.com
二、然后用户浏览器通过系统向DNS服务器查询域名对应的IP地址
三、负载均衡根据我们设定的分配算法和规则,选择一台后端的真实Web服务器,与之建立TCP连接、并转发我们浏览器发出去的网页请求。
四、用户浏览器向查询到的IP地址(Web服务器)发起HTTP请求
五、在浏览器解析页面内容的时候,发现页面引用了其他未加载的image、css文件、js文件等静态内容,根据DOM Tree和CSS Rule Tree生成Render Tree(呈现树)。根据Render Tree渲染网页。
六、浏览器收到响应后,将渲染完成的网页展示在用户浏览器中。

三、常见Web容器

简单来说Web容器就是可以向发出请求的浏览器提供文档的程序。它是一种被动程序,只有其他计算机发出的请求该容器时,容器才会响应;

Web容器的主要功能是存储,处理和传递网页给客户。客户端和服务器之间的通信使用超文本传输??协议(HTTP)进行。交付的页面最常见的是HTML文档,除了文本内容之外,还可能包含图像,样式表和脚本。

常见的Web容器:

Apache:Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。

Nginx:是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。

IIS:是互联网信息服务,是由微软公司提供的基于运行Microsoft Windows的互联网基本服务。

原文地址:https://www.cnblogs.com/061713xlhj/p/12681347.html

时间: 2024-10-07 22:17:00

Web服务器通信原理的相关文章

Web服务器工作原理概述

Web服务器工作原理概述 很多时候我们都想知道,web容器或web服务器(比如Tomcat或者jboss)是怎样工作的?它们是怎样处理来自全世界的http请求的?它们在幕后做了什么动作?Java Servlet API(例如ServletContext,ServletRequest,ServletResponse和Session这些类)在其中扮演了什么角色?这些都是web应用开发者或者想成为web应用开发者的人必须要知道的重要问题或概念.在这篇文章里,我将会尽量给出以上某些问题的答案.请集中精神

web服务器的原理

复制代码运行后报错: java.lang.NULLPointerException 发现是因为之前设置完tomcat没有关,占用的8080端口导致. 关掉后,访问 127.0.0.1:8080/test.html . 一片空白,没有显示东西,发现控制台输出访问路径是项目根目录 将test.html放到根目录后再次运行,访问到了 Web服务器的本质就是 接收数据 ⇒ HTTP解析 ⇒ 逻辑处理 ⇒ HTTP封包 ⇒ 发送数据 原文地址:https://www.cnblogs.com/resetyg

虚拟机与宿主机web 服务器通信指南

从外网访问VMware虚拟机的Web服务 graybull posted @ 2013年1月04日 16:50 in VMware with tags VMware NAT port forwarding TFS Web access , 4534 阅读 在主机上安装了VMware,VMware上安装了Linux或windows虚拟机.我想让虚拟机向外提供Web服务,于是在它上面打开了IIS(Windows).本文讲解如何让我的主机和外网用户可以访问IIS的网站. 我的情景是这样的:主机(win

简介web服务器的工作原理

一 什么是web服务器,应用服务器和web容器? 对于web服务器与应用服务器:"在过去它们是有区别的,但是这两个不同的分类慢慢地合并了,而如今在大多在情况下和使用中可以把它们看成一个整体." 但是当有人说到"web服务器"时,你通常要把它认为是以HTTP为核心.web UI为向导的应用. 当有人说到"应用服务器"时,你需要想到"高负载.企业级特性.事务和队列.多通道通信(HTTP和更多的协议)". 在Java方面,web容器

Web服务器的工作原理

Web服务器工作原理概述 很多时候我们都想知道,web容器或web服务器(比如Tomcat或者jboss)是怎样工作的?它们是怎样处理来自全世界的http请求的?它们在幕后做了什么动作?Java Servlet API(例如ServletContext,ServletRequest,ServletResponse和Session这些类)在其中扮演了什么角色?这些都是web应用开发者或者想成为web应用开发者的人必须要知道的重要问题或概念.在这篇文章里,我将会尽量给出以上某些问题的答案.请集中精神

web服务器原理

一.概述 Web服务器概念较为广泛,我们最常说的Web服务器指的是网站服务器,它是建立在Internet之上并且驻留在某种计算机上的程序.Web服务器可以向Web客户端(如浏览器)提供文档或其他服务,只要是遵循HTTP协议而设计的网络应用程序都可以是Web客户端. 二.web服务器工作原理 假设把浏览器当作客户端 1.用户做出了一个操作,可以是填写网址敲回车,可以是点击链接,可以是点击按键等,接着浏览器获取了该事件. 2.浏览器与对端服务程序建立TCP连接. 3.浏览器将用户的事件按照HTTP协

web服务器、应用服务器、web容器、反向代理服务器区别与联系

我们知道,不同肤色的人外貌差别很大,而双胞胎的辨识很难.有意思的是Web服务器/Web容器/Web应用程序服务器/反向代理有点像四胞胎,在网络上经常一起出现.本文将带读者对这四个相似概念如何区分. 1. 一文看懂web服务器.应用服务器.web容器.反向代理服务器区别与联系 1.1. Web服务器概念与基本原理 1.1.1. Web服务器的历史 1.1.2. Web服务器工作原理 1.2. Web应用程序容器概念与基本原理 1.2.1. Web应用程序容器的由来 1.2.2. Web应用程序容器

用C写一个web服务器(四) CGI协议

* { margin: 0; padding: 0 } body { font: 13.34px helvetica, arial, freesans, clean, sans-serif; color: black; line-height: 1.4em; background-color: #F8F8F8; padding: 0.7em } p { margin: 1em 0; line-height: 1.5em } table { font-size: inherit; font: 10

Tiny HTTPd 开源web服务器搭建过程及简要分析

开源web服务器,Tiny HTTPd,纯c编写,作者:   jdavidb.服务器小巧,轻便,结构简单,将搭建web服务器的原理阐述的很清楚,对学习很有帮助.下载地址 测试环境:Ubuntu 14.04.2 由于服务器不是默认为linux开发的,所以需要经过简单的修改才能在linux上运行起来. 1.修改Makefile文件,将gcc -W -Wall -lsocket -lpthread -o httpd httpd.c 修改为:gcc -W -Wall  -o httpd httpd.c