zoukankan      html  css  js  c++  java
  • 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"]
    这样才证明服务是真的开启了(切记不要只是看端口,要看日志里面的信息)
    ==================================================

  • 相关阅读:
    指针类型强制转换
    Spark大师之路:广播变量(Broadcast)源代码分析
    [Python]sqlite3二进制文件存储问题(BLOB)(You must not use 8-bit bytestrings unless you use a text_factory...)
    把字符串转化成整型显示
    一张图让你看清Java集合类(Java集合类的总结)
    Java读书笔记三(字符串)
    Afinal载入网络图片及下载文件用法
    netfilter/iptables 结构要点
    OpenGL 实现Interpolation插值算法
    GPU 编程入门到精通(五)之 GPU 程序优化进阶
  • 原文地址:https://www.cnblogs.com/elin989898/p/11912143.html
Copyright © 2011-2022 走看看