Tomcat工作原理
2016-07-14 14:44
465 查看
一、apache-tomcat方式:
配置文件:server.xml
主要配置项:
1、Server:
指定8005端口,监听关闭tomcat进行的请求。
2、 Connector:共两个,定义客户端和服务器之间的连接。获取客户端发起的请求后,转交给Engine处理,然后将回应返回给客户端。
第一个监听80端口(若只有tomcat,没有apache,此处监听的是8080端口),直接接收来自客户端浏览器的请求。若请求使用了SSL(https),则使用8443端口。
第二个监听8009端口,接收通过其他WebServer(如apache)转发来的http请求。
3、Engine:定义虚拟主机
Host定义虚拟主机名,appBase定义应用程序存放目录。
Engine中可以定义多个Host,当Engine收到http请求时会匹配到一个虚拟主机,由该虚拟主机来处理。如果没有匹配到一个虚拟主机,则将该请求交给默认设置的虚拟主机来处理。
以上配置时,例如应用程序存放目录为:webapps/hello/index...,则访问url为localhost/hello。
二、apache-tomcat处理http请求的过程:
1、客户端直接请求80/8080端口(或者由8009端口接收由apache等其他WebServer转发来的请求),Connector接收客户端请求。
2、Connector将http请求交给Engine。
3、Engine收到请求后,匹配到对应的Host,将该请求交给该Host处理。
4、Host处理请求,并将结果原路返回。
5、Connector接收到处理的结果后,返回给客户端或其他WebServer。
配置文件:server.xml
主要配置项:
1、Server:
<Server port="8005" shutdown="SHUTDOWN"> </Server>
指定8005端口,监听关闭tomcat进行的请求。
2、 Connector:共两个,定义客户端和服务器之间的连接。获取客户端发起的请求后,转交给Engine处理,然后将回应返回给客户端。
第一个监听80端口(若只有tomcat,没有apache,此处监听的是8080端口),直接接收来自客户端浏览器的请求。若请求使用了SSL(https),则使用8443端口。
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
第二个监听8009端口,接收通过其他WebServer(如apache)转发来的http请求。
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
3、Engine:定义虚拟主机
Host定义虚拟主机名,appBase定义应用程序存放目录。
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
Engine中可以定义多个Host,当Engine收到http请求时会匹配到一个虚拟主机,由该虚拟主机来处理。如果没有匹配到一个虚拟主机,则将该请求交给默认设置的虚拟主机来处理。
以上配置时,例如应用程序存放目录为:webapps/hello/index...,则访问url为localhost/hello。
二、apache-tomcat处理http请求的过程:
1、客户端直接请求80/8080端口(或者由8009端口接收由apache等其他WebServer转发来的请求),Connector接收客户端请求。
2、Connector将http请求交给Engine。
3、Engine收到请求后,匹配到对应的Host,将该请求交给该Host处理。
4、Host处理请求,并将结果原路返回。
5、Connector接收到处理的结果后,返回给客户端或其他WebServer。
相关文章推荐
- linux 下 tomcat启动没问题,但是局域网访问不了,那是防火墙没开,开一下即可。
- CentOS7 Tomcat 启动过程很慢,JVM上的随机数与熵池策略
- 同一服务器部署多个tomcat时的端口号修改详情
- tomcat 简介
- tomcat配置
- tomcat和apache的结合 看最重要的 文档有点乱
- Tomcat+jk集群配置
- JavaWeb学习总结(三)——Tomcat服务器学习和使用(二)
- 错误提示--更改tomcat端口号方法,Several ports (8005, 8080, 8009)
- 使用jdb对tomcat进行远程调试
- tomcat 日志关闭和设置
- tomcat 高并发
- jdk和tomcat6.x环境变量配置???
- JavaWeb学习总结(二)——Tomcat服务器学习和使用(一)
- server 2008 服务器下tomcat 绑定多个二级域名,并隐藏项目名。
- tomcat启动报错
- 在tomcat 8中使用String upload = this.getServletContext().getRealPath("upload")为null
- Tomcat/Java/Jsp/ExtJS 调用 C# ActiveX控件页面代码
- Linux下安装和配置JDK与Tomcat(升级版)
- apache整合tomcat