zoukankan      html  css  js  c++  java
  • 静态部署TOMCAT

    常见部署方式:静态部署和容器化部署

    一、下载tomcat安装包

    下载地址:https://tomcat.apache.org/download-90.cgi

    图上是显示最新版本,而我下载的是9.0.8版本。。。 

    得到 apache-tomcat-9.0.8.tar.gz,并将其传输到服务器的指定路径

    二、部署操作

    1、解压安装包

    tar -xzvf apache-tomcat-9.0.8.tar.gz

    2、配置环境变量

    编辑配置文件

    vim /etc/profile

    在# Path manipulation 的上面添加如下内容:

    export CATALINA_HOME=/root/soft/docker/north/apache-tomcat-9.0.8  # tomcat解压后的路径
    export CLASSPATH=.:$JAVA_HOME/lib:$CATALINA_HOME/lib
    export PATH=$PATH:$CATALINA_HOME/bin

    如图

     生效修改的环境变量

    . /etc/profile  或者source /etc/profile

    3、启动tomcat

    (1)编辑 /root/soft/docker/north/apache-tomcat-9.0.8/conf/server.xml

     如上图,我将端口修改成8082,这里要注意一下tomcat 的默认端口为8080。。。

    (2)在apache-tomcat-9.0.8目录下执行命令

    ./bin/startup.sh

    4、浏览器访问

    (1)在阿里云ECS控制台添加安全组规则、开放8082端口

     (2)此时使用 IP:PORT 访问即可

    5、部署方式

    (1)Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。所以可以将JSP程序打包成一个 war包放在目录下,服务器会自动解开这个war包,并在这个目录下生成一个同名的文件夹。

    (2)webapps这个默认的应用目录也是可以改变。

      打开Tomcat的conf目录下的server.xml文件,找到下面内容:

    <Host name="localhost"  appBase="webapps"
                unpackWARs="true" autoDeploy="true">
    </Host>

    将appBase修改即可。

    (3)在server.xml中指定

     在Tomcat的配置文件中,一个Web应用就是一个特定的Context,可以通过在server.xml中新建Context里部署一个JSP应用程序。打开server.xml文件,在Host标签内建一个Context,内容如下:

    在tomcat中的conf目录中,在server.xml中的,<host>属性中添加:

    <Context path="/demo" docBase="D: workspacehelloWebRoot" debug="0" privileged="true">
    </Context>
    或者
    <Context path="/myapp" reloadable="true" docBase="D:myapp" workDir="D:myappwork"/>
    或者
    <Context path="/sms4" docBase="D:workspacesms4WebRoot"/>
    
    说明:
    path是虚拟路径;
    docBase 是web项目的WebRoot所在的路径,注意是WebRoot的路径,不是项目的路径。其实也就是编译后的项目
    workDir 是这个应用的工作目录,存放运行时生成的与这个应用相关的文件;
    
    debug 则是设定debug level,  0表示提供最少的信息,9表示提供最多的信息
    privileged设置为true的时候,才允许Tomcat的Web应用使用容器内的Servlet
    reloadable 如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,可以在不重起tomcat的情况下改变应用程序,实现热部署
    antiResourceLocking 和antiJARLocking  热部署是需要配置的参数,默认false避免更新了某个webapp,有时候Tomcat并不能把旧的webapp完全删除,通常会留下WEB-INF/lib下的某个jar包,必须关闭Tomcat才能删除,这就导致自动部署失败。设置为true,Tomcat在运行对应的webapp时,会把相应的源文件和jar文件复制到一个临时目录里。

    (4)在confCatalinalocalhost 目录下添加xml配置文件

    在conf目录中,新建 Catalinalocalhost目录,在该目录中新建一个xml文件,名为demo.xml,要和path后的那个名字一致,按照下边这个path的配置,xml的名字应该就应该是demo(demo.xml),该xml文件的内容为:

    <Context path="/demo" docBase="/root/demo/WebRoot" debug="0" privileged="true"></Context>

    tomcat自带例子如下:

    <Context docBase="${catalina.home}/server/webapps/host-manager"
             privileged="true" antiResourceLocking="false" antiJARLocking="false">
    </Context>

    这个例子是tomcat自带的,编辑的内容实际上和第二种方式是一样的,其中这xml文件名字就是访问路径,这样可以隐藏应用的真实名字。

    (5)注意

    删除一个Web应用同时也要删除webapps下相应的文件夹和server.xml中相应的Context,还要将Tomcat的confcatalinalocalhost目录下相应的xml文件删除,否则Tomcat仍会去配置并加载。。。
    二 动态部署
         登陆tomcat管理控制台:http://localhost:8080/ ,输入用户名和密码后便可管理应用并动态发布。
         在Context Path(option):中输入/yourwebname ,这代表你的应用的访问地址。
         XML Configration file URL中要指定一个xml文件,比如我们在F:下建立一个hmcx.xml文件,内容如下:

    <Context reloadable="false" />

    其中docBase不用写了,因为在下一个文本框中填入。或者更简单点,这个文本框什么都不填,在WAR or Directory URL:中键入F:hmcx即可,然后点击Deploy按钮,上面就可以看到了web应用程序,名字就Context Path(option):中的名字。

  • 相关阅读:
    asp.net页面刷新后样式就发生了改变
    ASP.NET MVC 入门系列教程
    javascript打开邮箱服务器
    jquery验证邮箱
    MySQL数据库的索引类型
    JS判断浏览器
    Silverlight 3 新特性
    moss 2007 添加关键字及最佳匹配
    vs2008 常用快捷键
    Microsoft Enterprise Library 5.0正式版本已经发布
  • 原文地址:https://www.cnblogs.com/yfacesclub/p/12082730.html
Copyright © 2011-2022 走看看