• tomcat


    1. tomcat简介

    Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
    Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
    诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为9.0。

    tomcat就是传说中的中间件之一,tomcat本身是一个容器,专门用来运行java程序,java语言开发的网页.jsp就应该运行于tomcat中。而tomcat本身的运行也依赖于jdk环境。

    • tomcat应用场景:lnmt

    java体系

    • Java编程语言
    • Java类文件:java类文件为java编译后的文件
    • JavaAPI:java类文件库
    • JavaVM(JVM)
      • class loader:编译和类库文件加载器
      • 执行引擎

    JRE(Java Runtime Enviroment):

    是Java的运行环境。面向Java程序的使用者,而不是开发者。如果你仅下载并安装了JRE,那么你的系统只能运行Java程序。JRE是运行Java程序所必须环境的集合,包含JVM标准实现及 Java核心类库。它包括Java虚拟机、Java平台核心类和支持文件。它不包含开发工具(编译器、调试器等)。

    JDK(Java Development Kit):

    又称J2SDK(Java2 Software Development Kit),是Java开发工具包,它提供了Java的开发环境(提供了编译器javac等工具,用于将java文件编译为class文件)和运行环境(提 供了JVM和Runtime辅助包,用于解析class文件使其得到运行)。如果你下载并安装了JDK,那么你不仅可以开发Java程序,也同时拥有了运 行Java程序的平台。JDK是整个Java的核心,包括了Java运行环境(JRE),一堆Java工具tools.jar和Java标准类库 (rt.jar)。

    运行jsp的web容器
    jsp技术将java代码嵌入html文件中,建立了一种动态网页的编写标准,它的技术基础是serverlet技术,当用户请求一个jsp文件时,jsp会将代码转换成serverlet(即标准的java代码),java代码再交由低层的jdk执行。常见的容器有websphere,weblogic,tomcat。

    中间件
    中间件(英语:Middleware):又译中间件、中介层,是一类提供系统软件和应用软件之间连接、便于软件各部件之间的沟通的软件,应用软件可以借助中间件在不同的技术架构之间共享信息与资源。中间件位于客户机服务器的操作系统之上,管理着计算资源和网络通信

    tomcat项目部署

    //关闭防火墙与selinux0
    [root@localhost ~]# systemctl stop firewalld
    [root@localhost ~]# setenforce 0
    

    java环境安装

    //安装jdk环境
    [root@localhost ~]# yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
    .....安装过程略
    
    //查看安装的版本
    [root@localhost ~]# java -version
    openjdk version "1.8.0_131"
    OpenJDK Runtime Environment (build 1.8.0_131-b12)
    OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)
    
    //下载tomcat并安装
    [root@localhost ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-10/v10.0.6/bin/apache-tomcat-10.0.6.tar.gz
    
    [root@localhost ~]# cd /usr/src/
    [root@localhost src]# ls
    apache-tomcat-10.0.6.tar.gz  debug  kernels
    [root@localhost src]# tar xf apache-tomcat-10.0.6.tar.gz
    [root@localhost src]# ls
    apache-tomcat-10.0.6  apache-tomcat-10.0.6.tar.gz  debug  kernels
    [root@localhost src]# cd apache-tomcat-10.0.6
    [root@localhost apache-tomcat-10.0.6]# pwd
    /usr/src/apache-tomcat-10.0.6
    [root@localhost apache-tomcat-10.0.6]# ls
    bin           conf             lib      logs    README.md      RUNNING.txt  webapps
    BUILDING.txt  CONTRIBUTING.md  LICENSE  NOTICE  RELEASE-NOTES  temp         work
    [root@localhost apache-tomcat-10.0.6]# bin/startup.sh
    Using CATALINA_BASE:   /usr/src/apache-tomcat-10.0.6
    Using CATALINA_HOME:   /usr/src/apache-tomcat-10.0.6
    Using CATALINA_TMPDIR: /usr/src/apache-tomcat-10.0.6/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/src/apache-tomcat-10.0.6/bin/bootstrap.jar:/usr/src/apache-tomcat-10.0.6/bin/tomcat-juli.jar
    Using CATALINA_OPTS:   
    Tomcat started.
    [root@localhost apache-tomcat-10.0.6]# ss -antl
    State         Recv-Q        Send-Q                    Local Address:Port                 Peer Address:Port        
    LISTEN        0             128                             0.0.0.0:22                        0.0.0.0:*           
    LISTEN        0             100                                   *:8080                            *:*           
    LISTEN        0             128                                [::]:22                           [::]:*           
    LISTEN        0             1                    [::ffff:127.0.0.1]:8005                           
    

    image

    //创建一个hello world的java项目网页和目录
    [root@localhost apache-tomcat-10.0.6]# cd webapps/
    [root@localhost webapps]# mkdir test 
    [root@localhost webapps]# vim test/index.jsp 
    <html>
    <head>
            <title>test page</title>
    </head>
    <body>
            <%
                out.println("Hello World");
            %>
    </body>
    </html>
    
    //重启服务
    [root@localhost webapps]# cd
    [root@localhost ~]# ./apache-tomcat-10.0.6/bin/catalina.sh stop
    [root@localhost ~]# ./apache-tomcat-10.0.6/bin/catalina.sh start
    

    image

    //目录内容与配置文件
    [root@localhost apache-tomcat-10.0.6]# ll bin/
    ...
    catalina.sh    #tomcat服务控制
    configtest.sh    #配置文件测试
    daemon.sh #守护进程
    [root@localhost apache-tomcat-10.0.6]# ll
    total 132
    localhostwxr-x--- 2 root root  4096 May 13 10:48 bin #二进程命令存放
    -rw-r----- 1 root root 18975 May  8 23:24 BUILDING.txt
    localhostwx------ 3 root root   254 May 13 11:49 conf    #配置文件
    -rw-r----- 1 root root  5644 May  8 23:24 CONTRIBUTING.md
    localhostwxr-x--- 2 root root  4096 May 13 10:37 lib #库文件存放
    -rw-r----- 1 root root 60269 May  8 23:24 LICENSE
    localhostwxr-x--- 2 root root   132 May 13 11:06 logs    #日志存放
    -rw-r----- 1 root root  2333 May  8 23:24 NOTICE
    -rw-r----- 1 root root  3372 May  8 23:24 README.md
    -rw-r----- 1 root root  6904 May  8 23:24 RELEASE-NOTES
    -rw-r----- 1 root root 16517 May  8 23:24 RUNNING.txt
    localhostwxr-x--- 2 root root    30 May 13 10:37 temp
    localhostwxr-x--- 7 root root    81 May  8 23:24 webapps #项目存放位置
    localhostwxr-x--- 3 root root    22 May 13 11:06 work
    
    [root@localhost apache-tomcat-10.0.6]# vim conf/server.xml 
    ...//控制端口协议
    <Connector port="8080" protocol="HTTP/1.1"
                   connectionTimeout="20000"
                   redirectPort="8443" />
    //AJP协议控制
        -->
    
        <!-- Define an AJP 1.3 Connector on port 8009 -->
        <!--
        <Connector protocol="AJP/1.3"
                   adlocalhostess="::1"
                   port="8009"
                   redirectPort="8443" />
        -->
    
    //图形化管理界面配置
    [root@localhost apache-tomcat-10.0.6]# vim conf/tomcat-users.xml 
    ...
    <role rolename="manager-eula"/> #添加角色
    <user username="tomcat" password="123456" roles="manager-eula"/> #添加用户密码
    </tomcat-users>
    
    //添加允许访问ip段
    [root@localhost apache-tomcat-10.0.6]# vim webapps/host-manager/META-INF/context.xml 
    ...
      <Valve className="org.apache.catalina.valves.RemoteAdlocalhostValve"
             allow="192.168.23.d+|127.d+.d+.d+|::1|0:0:0:0:0:0:0:1" />  #放行192.168.23整个网段
    

    tomcat启动和关闭的方式都可以用目录里的脚本进行操作

    //其中shutdown.sh、startup.sh、catalina.sh这三个脚本用来控制启动,关闭tomcat的
    [root@localhost bin]# ls
    bootstrap.jar       commons-daemon.jar            digest.sh         setclasspath.sh  tomcat-native.tar.gz
    catalina.bat        commons-daemon-native.tar.gz  makebase.bat      shutdown.bat     tool-wrapper.bat
    catalina.sh         configtest.bat                makebase.sh       shutdown.sh      tool-wrapper.sh
    catalina-tasks.xml  configtest.sh                 migrate.bat       startup.bat      version.bat
    ciphers.bat         daemon.sh                     migrate.sh        startup.sh       version.sh
    ciphers.sh          digest.bat                    setclasspath.bat  tomcat-juli.jar
    
    //具体操作如下
    
    [root@localhost apache-tomcat-10.0.6]# bin/catalina.sh stop
    Using CATALINA_BASE:   /usr/src/apache-tomcat-10.0.6
    Using CATALINA_HOME:   /usr/src/apache-tomcat-10.0.6
    Using CATALINA_TMPDIR: /usr/src/apache-tomcat-10.0.6/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/src/apache-tomcat-10.0.6/bin/bootstrap.jar:/usr/src/apache-tomcat-10.0.6/bin/tomcat-juli.jar
    Using CATALINA_OPTS:   
    [root@localhost apache-tomcat-10.0.6]# ss -antl
    State       Recv-Q        Send-Q                Local Address:Port               Peer Address:Port       
    LISTEN      0             128                         0.0.0.0:22                      0.0.0.0:*          
    LISTEN      0             128                            [::]:22                         [::]:*          
    [root@localhost apache-tomcat-10.0.6]# bin/catalina.sh start
    Using CATALINA_BASE:   /usr/src/apache-tomcat-10.0.6
    Using CATALINA_HOME:   /usr/src/apache-tomcat-10.0.6
    Using CATALINA_TMPDIR: /usr/src/apache-tomcat-10.0.6/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/src/apache-tomcat-10.0.6/bin/bootstrap.jar:/usr/src/apache-tomcat-10.0.6/bin/tomcat-juli.jar
    Using CATALINA_OPTS:   
    Tomcat started.
    [root@localhost apache-tomcat-10.0.6]# ss -antl
    State       Recv-Q       Send-Q                   Local Address:Port             Peer Address:Port       
    LISTEN      0            128                            0.0.0.0:22                    0.0.0.0:*          
    LISTEN      0            128                               [::]:22                       [::]:*          
    LISTEN      0            1                   [::ffff:127.0.0.1]:8005                        *:*          
    LISTEN      0            100                                  *:8080                        *:*  
    
    //你也可以使用shutdown.sh、 startup.sh
    
    [root@localhost apache-tomcat-10.0.6]# bin/shutdown.sh 
    Using CATALINA_BASE:   /usr/src/apache-tomcat-10.0.6
    Using CATALINA_HOME:   /usr/src/apache-tomcat-10.0.6
    Using CATALINA_TMPDIR: /usr/src/apache-tomcat-10.0.6/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/src/apache-tomcat-10.0.6/bin/bootstrap.jar:/usr/src/apache-tomcat-10.0.6/bin/tomcat-juli.jar
    Using CATALINA_OPTS:   
    [root@localhost apache-tomcat-10.0.6]# ss -antl
    State       Recv-Q        Send-Q                Local Address:Port               Peer Address:Port       
    LISTEN      0             128                         0.0.0.0:22                      0.0.0.0:*          
    LISTEN      0             128                            [::]:22                         [::]:*          
    [root@localhost apache-tomcat-10.0.6]# bin/startup.sh 
    Using CATALINA_BASE:   /usr/src/apache-tomcat-10.0.6
    Using CATALINA_HOME:   /usr/src/apache-tomcat-10.0.6
    Using CATALINA_TMPDIR: /usr/src/apache-tomcat-10.0.6/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/src/apache-tomcat-10.0.6/bin/bootstrap.jar:/usr/src/apache-tomcat-10.0.6/bin/tomcat-juli.jar
    Using CATALINA_OPTS:   
    Tomcat started.
    [root@localhost apache-tomcat-10.0.6]# ss -antl
    State       Recv-Q       Send-Q                   Local Address:Port             Peer Address:Port       
    LISTEN      0            128                            0.0.0.0:22                    0.0.0.0:*          
    LISTEN      0            128                               [::]:22                       [::]:*          
    LISTEN      0            1                   [::ffff:127.0.0.1]:8005                        *:*          
    LISTEN      0            100                                  *:8080                        *:* 
    
    • 点击Host Manager
      image

    • 输入刚才配置的用户名与密码
      image

    • 现在可以进入管理界面
      image

  • 相关阅读:
    linux 防火墙相关
    .net安装windows服务和生产webservice
    linq小实例
    C# DataTable 总结
    document对象
    结对-四则运算-开发过程
    课后作业-阅读任务-阅读笔记-1
    课后作业-阅读任务-阅读提问-2
    课后作业-阅读任务-阅读提问-3
    团对-象棋游戏-开发环境搭建过程
  • 原文地址:https://www.cnblogs.com/Ycqifei/p/14766333.html
Copyright © 2020-2023  润新知