tomcat 请求处理流程

tomcat 请求处理流程  

 nginx虚拟主机:3种,基于IP 、基于域名、基于端口
tomcat虚拟主机:
```````````````````````````````````````````````````````````````````````````````````````
tomcat 请求处理流程 
tomcat处理流程:用户发送请求到WEB服务器,该请求会披正在监听的Connector连接器接收,
并把该请求交给Service下的Engine来处理,并等待Engine处理的结果。
Engine获得清求后会根据请求的主机信息来匹配相应的Host主机,
Host主机会根据请求的路径匹配对应的Context, Context web应用匹配上之后就构建request. response请求对象,
调用指定的Servlet来处理请求。请求处理完成后会将response对象返回给Host主机,
Host主机将response对象返回给Engine引擎,Engine 再将response 对象返回给Connector链接器,
最后Connector连接器将response返回给浏览器。
------------------------------------------------------------------------------------------
实验1:自定义默认网站目录
~~~~~~~~~~~~~~~~~~~~~
【1】首先在跟目录下建立一个web目录,并在里面建立一个webapp目录,用于存放网站文件
【2】在webapp目录下建立一个index.jsp的测试页面
【3】修改tomcat的server.xml文件
定义一个虚拟主机,并将网站文件路径指向已经建立的/web/webapp,在host段增加context段
~~~~~~~~~~~~~~~具体做法如下:~~~~~~~~~~~~~~~~~~~
67主机
[root@localhost ~]# mkdir -pv /web/webapp
mkdir: 已创建目录 "/web"
mkdir: 已创建目录 "/web/webapp"
[root@localhost ~]# vim /web/webapp/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
        <head>
                <title>JSP test page</title>
        </head>
        <body>
                <% out.println("welcome to test site,http://www.test1.com");%>
        </body>
</html>
保存退出
备份修改配置文件
[root@localhost ~]# cd /usr/local/tomcat8/conf/
[root@localhost conf]# cp server.xml server.xml.bak
[root@localhost conf]# vim server.xml
150         <Context docBase="/web/webapp" path="" rel    oadable="flase">
151         </Context>
保存退出
[root@localhost conf]# /usr/local/tomcat8/bin/shutdown.sh
[root@localhost conf]# /usr/local/tomcat8/bin/startup.sh
---------------------------------------------------
66主机
[root@localhost ~]# mkdir -pv /web/webapp
mkdir: 已创建目录 "/web"
mkdir: 已创建目录 "/web/webapp"
[root@localhost ~]# vim /web/webapp/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
        <head>
                <title>JSP test page</title>
        </head>
        <body>
                <% out.println("welcome to test site,http://www.test2.com");%>
        </body>
</html>
保存退出
[root@localhost ~]# cp /usr/local/tomcat8/conf/server.xml{,.bak}
[root@localhost ~]# vim /usr/local/tomcat8/conf/server.xml  //添加以下内容
150         <Context docBase="/web/webapp" path="" rel    oadable="flase">
151         </Context>
保存退出
[root@localhost conf]# /usr/local/tomcat8/bin/shutdown.sh
[root@localhost conf]# /usr/local/tomcat8/bin/startup.sh
测试:
在浏览器中输入 http://192.168.200.67:8080/
           http://192.168.200.66:8080/   进行访问


==================================================
一般的服务重启后要看端口是否打开: netstat -lnpt | grep :8080
但是 tomcat 不一样,很多时候端口是的打开的但是页面打不开,
所以还要关注 /usr/local/tomcat8/logs/   这里面有日志
用tail -f 查看 看到最后有8080 标识,表示打开了
[root@localhost ~]# tail -f /usr/local/tomcat8/logs/catalina.2019-11-22.log
22-Nov-2019 15:22:51.511 信息 [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
22-Nov-2019 15:22:51.536 信息 [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]
这样才证明服务是真的开启了(切记不要只是看端口,要看日志里面的信息)
==================================================

猜你喜欢

转载自www.cnblogs.com/elin989898/p/11912143.html