14.1、用户访问网站流程:

1、 dns解析原理:

客户端到dns服务器之间的查询为递归查询;

dns服务器到根域名服务器的查询是迭代查询;

[lc@m01 ~]$ dig www.baidu.com +trace #跟踪解析百度域名的过程;

nslookup #解析域名

2、tcp/ip 三次握手原理:

3、http协议原理(www服务的请求过程)请求细节:

(1)http协议简介:

http协议,全称是HyperText Transfer Protocol,中文名为超文本传输协议,是互联网中常用的一种网络协议,http的重要应用之一是www服务。

http协议是 b/s架构 (瘦客户端,擅长广域网);c/s架构(胖客户端),适合于局域网 www全称是world wide web 常称为web,中文翻译为万维网;

http协议的www服务应用的的默认端口号为80,另外的一个加密的www服务应用https服务的默认端口号是443,

主要用于网银、支付等和钱相关的业务。

(2)、http版本介绍:

1.0版本:

只保持短暂的连接,浏览器每次的http请求都需要与服务器建立一个tcp连接,服务器

完成请求处理后即断开tcp连接,服务器不跟踪每个客户也不记录过去的请求;

1.1版本:

在连接方面是持久的连接,浏览器的多个http请求可以在一个tcp连接上传送;

(3)http报文:

A、HTTP请求报文格式:

HTTP请求报文主要由请求行、请求头部、请求正文3部分组成

a、请求行:

由3部分组成,分别为:请求方法、URL(见备注1)以及协议版本,之间由空格分隔;

请求方法包括GET、HEAD、PUT、POST、TRACE、OPTIONS、DELETE以及扩展方法,当然并不是所有的服务器都实现了所有的方法;

部分方法即便支持,处于安全性的考虑也是不可用的协议版本的格式为:HTTP/主版本号.次版本号,常用的有HTTP/1.0和HTTP/1.

b、请求头部

请求头部为请求报文添加了一些附加信息,由“名/值”对组成,每行一对,名和值之间使用冒号分隔 ;

c、 请求正文:

可选部分,比如GET请求就没有请求正文

d、http,请求实例:

B、HTTP响应报文格式:

HTTP响应报文主要由状态行、响应头部、响应正文3部分组成

a、状态行:

状态代码为3位数字,200~299的状态码表示成功,300~399的状态码指资源重定向,400~499的状态码指客户端请求出错,

500~599的状态码指服务端出错(HTTP/1.1向协议中引入了信息性状态码,范围为100~199);

常用状态码:

200:服务器成功返回网页,这是成功的http请求;

301:永久跳转,客户端所有请求将永久跳转到被设定的新的位置;

403:禁止访问,这个请求是合法的,但是服务器端因为匹配了预先设置的规则而拒绝

响应客户端的请求,此类问题一般是服务器权限配置不当所导致的;

401:(未授权) 请求要求进行身份验证。登录后,服务器可能会返回对页面的此响应。

404:服务器找不到客户请求的指定页面,可能是客户端请求了服务器上不存在的资源;

500:内部服务器错误,服务器遇到意料不到的情况,不能完成客户的请求,这是一个比较

笼统的报错,一般为服务器的设置或者内部程序问题导致。列如selinux开启,没有为

http设置规则许可。

502:坏的网关,一般是代理服务器请求后端服务时,后端服务不可用或没有完成相应网关

服务器,一般为反向代理服务器下面的节点出现问题;

503:服务当前不可用,可能是因为服务器超载或停机维护导致;

b、响应头部:

与请求头部类似,为响应报文添加了一些附加信息;

c、响应正文:

网页的内容;

d、相应实例:

4、大规模网站集群架构细节;

5、tcp/ip四次挥手过程;

14.2、http媒体类型及url-uri介绍:

1、url:

全称Uniform Resource Location ,中文翻译为统一资源定位符,也被称为网页地址(网址),类似于门牌,是因特网上标准的资源唯一地址。

2、uri:

全称Uniform Resource Identifier ,中文翻译为统一资源标识符,是一个用于标识某一互联网资源名称的字符串,

这个字符串在世界范围内唯一标识并定位某一个信息资源,互联网上每个可用的数据资源,入HTML、图片、视频等

皆通过统一资源标识符进行定位。

注:url是url的一个子集。

3、URI、URL和URN之间的区别:

URI全名为Uniform Resource Indentifier(统一资源标识),用来唯一的标识一个资源,是一个通用的概念,

URI由两个主要的子集URL和URN组成;

URL全名为Uniform Resource Locator(统一资源定位),通过描述资源的位置来标识资源;

URN全名为Uniform Resource Name(统一资源命名),通过资源的名字来标识资源,与其所处的位置无关,

这样即使资源的位置发生变动,其URN也不会变化;

HTTP规范将更通用的概念URI作为其资源标识符,但是实际上,HTTP应用程序处理的只是URI的URL子集

14.3、动态网页:

动态的并发是1000-2000,静态2-3万;

seo:搜索引擎优化;

14.3、网站访问度量:

14、web服务器介绍的更多相关文章

  1. Java中常见的5种WEB服务器介绍

    这篇文章主要介绍了Java中常见的5种WEB服务器介绍,它们分别是Tomcat.Resin.JBoss.WebSphere.WebLogic,需要的朋友可以参考下 Web服务器是运行及发布Web应用的 ...

  2. WEB服务器1--开篇

    WEB服务器 web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档,也可以放置网站文件,让全世界浏览:可以放置数据文件,让全世界下载.目前最主流的三 ...

  3. asp.net core 系列 18 web服务器实现

    一. ASP.NET Core Module 在介绍ASP.NET Core Web实现之前,先来了解下ASP.NET Core Module.该模块是插入 IIS 管道的本机 IIS 模块(本机是指 ...

  4. net core web服务器实现

    net core 系列 18 web服务器实现 一. ASP.NET Core Module 在介绍ASP.NET Core Web实现之前,先来了解下ASP.NET Core Module.该模块是 ...

  5. JavaWeb-入门第一课-1.静态web动态web 2.web服务器 3.下载和安装Tomcat-web服务器

    文章来源:http://www.cnblogs.com/xdp-gacl/p/3729033.html 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思 静态web资源(如html ...

  6. Web服务器学习总结(一):web服务器简介

    一.WEB服务器 1.1.WEB服务器简介 1.Web服务器是指驻留于因特网上某种类型计算机的程序,是可以向发出请求的浏览器提供文档的程序.当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处 ...

  7. Node.js学习笔记(五) --- 使用Node.js搭建Web服务器

    1. Node.js 创建的第一个应用 1.引入http模块 var http = require("http"); 2. 创建服务器接下来我们使用 http.createServ ...

  8. 十七、创建一个 WEB 服务器(一)

    1.Node.js 创建的第一个应用 var http=require("http") http.createServer(function (req,res) { res.wri ...

  9. java web服务器tomcat介绍【转载】

    机器矩阵2016-08-10 22:14 java程序员亲切地称他为tom猫,看到这只猫可以说明1 服务器部署成功了 ,2 网络是联通的. 到底这只猫是什么来头呢? tomcat是Apache基金会下 ...

随机推荐

  1. [刷题] PTA 03-树3 Tree Traversals Again

    用栈实现树遍历 1 #include<stdio.h> 2 #include<string.h> 3 #define MAXSIZE 30 4 5 int Pre[MAXSIZ ...

  2. [项目] 淘淘商城 Part.1

    电商 市场 2013:79万笔/分钟 2014:13.4万亿,双11支付宝交易峰值285万笔/分钟 2015:50万亿 技术特点 一个Tomcat:500并发 分布式:上万并发 高并发.集群.负载均衡 ...

  3. Java 运行 Jar 包中java -cp 与 java jar 的区别

    java -cp java -cp 和 -classpath 一样,是指定类运行所依赖其他类的路径,通常是类库和jar包,需要全路径到jar包,多个jar包之间连接符:window上分号"; ...

  4. ExpressionHelp2

    public static class ExpressionHelp { private static Expression<T> Combine<T>(this Expres ...

  5. Linux(CentOS7)下安装jdk1.8

    Linux(CentOS7) 下安装 jdk1.8 操作过程. 一.检查是否自带jdk rpm -qa|grep java 如果存在则用下面命令删除,xxx yyy zzz代表查询出来的自带jdk名称 ...

  6. Go语言网络通信---一个简单的UDP编程

    Server端: package main import ( "fmt" "net" ) func main() { //创建udp地址 udpAddr, _ ...

  7. java后端知识点梳理——java基础

    面向对象 java三大特性 封装: 将事务封装成一个类,达到解耦,隐藏细节的效果.通过get/set等方法,封装了内部逻辑,并保留了特定的接口与外界联系. 继承: 从一个已知的类中派生出一个新的类,新 ...

  8. 在模仿中精进数据分析与可视化01——颗粒物浓度时空变化趋势(Mann–Kendall Test)

      本文是在模仿中精进数据分析与可视化系列的第一期--颗粒物浓度时空变化趋势(Mann–Kendall Test),主要目的是参考其他作品模仿学习进而提高数据分析与可视化的能力,如果有问题和建议,欢迎 ...

  9. 七、AIDE入侵检测

    Aide通过检查数据文件的权限.时间.大小.哈希值等,校验数据的完整性 部署AIDE入侵检测系统 [root@proxy ~]# yum -y install aide         //安装软件包 ...

  10. Mysql_SQLyog 数据库的创建

    1.创建数据库 CREATE DATABASE [IF NOT EXISTS] westos; 2.删除数据库 DROP DATABASE [IF EXISTS] westos; 3.使用数据库 -- ...