connector 监听端口,监听到以后,交给 Engine 引擎 处理,引擎会根据请求找到对应的主机,找到主机后再去找对应的应用。

如果我们将 port 改为 80,那访问的时候就不用输入端口号,因为 80 是默认端口:

这就是tomcat 服务器 的体系

关于虚拟主机:

查看一下 host 文件,如果没显示,取消系统对文件夹的默认隐藏和受保护文件隐藏的选项即可

我们看到,默认 127.0.0.1 对应的是 localhost

过程就是,输入localhost,浏览器会去host文件里去找,如果找到 ip,就访问
如果输入 www.baidu.com ,在host文件里找到了 127.0.0.1 ,浏览器就会去访问 127.0.0.1

如果host文件被别人改了,那我们在访问某个网址的时候,可能就会访问到别人指定的网站上去,比如钓鱼网站等

访问 localhost/myproject2/ (此时端口已经改为 80),访问到内容了

流程:localhost,去本机发送了 端口号为 80 的请求,来到了这里:

然后来到引擎处理

主机的名字叫 localhost,来到下图所示的地方:

然后找应用 myproject2


再访问一个

两个host

来到 m.myxq.com (本机host文件改过了)
在这个host 里找到了 path = "/myp1" ,所以找到这个应用了,然后到 docBase 里找到对应的项目,然后把内容显示出来了。

另外:
我们可以两个域名指向同一个iP
比如,m.taobao.com 手机端淘宝,这是一个项目
www.taobao.com ,这也是一个项目,
两个不同的项目,用不同的url 都可以访问到同一个ip,这个时候他访问的是同一个服务器了,但是我们可以访问到各自映射到的项目

如果是 m.myxq.com 就是下面这个 host,然后到 Context, 根据path,到docBase 对应的找到 各自的项目

关于虚拟主机

  • 输入网址时,会先到 host 文件中查找有没有对应的ip地址,如果有就直接访问该IP
  • 如果没有,就会去外网找DNS服务器进行域名与IP 地址的解析,查找
  • 多个域名可以访问同一个ip
  • 一个ip 对应一台电脑

Tomcat 服务器体系结构的更多相关文章

  1. JavaWeb---总结(四)Tomcat服务器学习和使用(二)

    一.打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命令的用法如下: 范例:将JavaWebDemoProject这个Ja ...

  2. JavaWeb学习总结(三)——Tomcat服务器学习和使用(二) 包含https 非对称秘钥 NB

    JavaWeb学习总结(三)--Tomcat服务器学习和使用(二) 一.打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命 ...

  3. JavaWeb学习总结(三)——Tomcat服务器学习和使用(二)

    一.打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命令的用法如下:

  4. java web 学习三(Tomcat 服务器学习和使用2)

    一.打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命令的用法如下:

  5. Tomcat服务器常用配置和HTTP简介

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html 内部邀请码:C8E245J (不写邀请码,没有现金送) 国 ...

  6. 重温web服务器--细说Tomcat服务器

    从大学开始接触java web的开发时就开始使用tomcat部署web项目,对它的理解仅仅停留在"这是个开源免费的servlet容器"的阶段,后来也接触了一些tomcat的体系,原 ...

  7. JavaEE:Tomcat服务器常用配置和HTTP简介

    Web服务器常用配置1.Web系统采用B/S结构通信的:Browser --- Server1)浏览器向服务器发送访问目标资源请求(请求)2)服务器根据请求的目标资源路径,在服务器端进行查找(请求查找 ...

  8. javaWeb学习总结(1)- Tomcat服务器学习和使用(3)

    一.打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命令的用法如下:

  9. JavaWeb学习总结(三)——Tomcat服务器学习和使用(二)(转)

    转载自 http://www.cnblogs.com/xdp-gacl/p/3744053.html 一.打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWe ...

随机推荐

  1. elasticsearch fitler查询例子

  2. mongodb insert()、save()的区别

    mongodb 的 insert().save()  ,区别主要是:若存在主键,insert()  不做操作,而save() 则更改原来的内容为新内容. 存在数据:  { _id : 1, " ...

  3. matlab矩阵中如何去掉重复的行;如何找到相同的行,并找到其位置

    找到了2个函数:unique和ismember 1. 去掉其中的重复行:unique 例子: IDX = [,,; ,,; ,,; ,,; ,,; ,,]; classNo = unique(IDX, ...

  4. 深入redis内部之redis启动过程之二

    接上文,继续分析代码 1. 设置线程安全模式 zmalloc_enable_thread_safeness();/*设置线程安全标识符为1*/ void zmalloc_enable_thread_s ...

  5. JavaScript对象 创建对象(一)

    创建对象  --以下内容来自JavaScript高级程序设计 工厂模式 用函数来封装以特定接口创建对象的细节. function createPerson(name, age, job){ var o ...

  6. JavaScript数据类型 数据转换

    JavaScript数据类型分为两种:原始类型和对象类型,原始类型有:number(数字).string(文本).boolean(布尔值).null(空).undefined(未定义):对象类型有:A ...

  7. CentOS初使用命令总结

    最近买了一台aliyun(ECS服务器)用来学习使用,初次使用难免要走弯路.遇到一些问题好长时间解决不了,结果经人指点豁然开朗.于是乎,总结了一些新生上路经验. 首先要解决的问题是:通过PuTTY.S ...

  8. DJango小总结一

    views.py                        def func(request):                # 包含所有的请求数据                ...     ...

  9. python 之闭包

    原文 函数作为返回值 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回. 我们来实现一个可变参数的求和.通常情况下,求和的函数是这样定义的: def calc_sum(*args): a ...

  10. html-框架标签的使用

    <frameset> - rows:按照行进行划分 ** <frameset rows="80,*"> - cols:按照列进行划分 ** <fram ...