发表于: 2017-05-13 23:58:21

1 1102


今日完成 

前言 本以为今天应该完成任务3的,但。。

于是今天主题变成了tomcat部署详解 版本8.5 应该7以上都一样

基础

服务器上安装好tomcat后,配置CATALINA_HOME=安装目录如/usr/local/tomcat8.5,可以echo $CATALINA_HOME得到

将打包好的projectName.war文件扔到$CATALINA_HOME/webapps下

/usr/local/tomcat8.5/bin/startup.sh 启动tomcat服务 $CATALINA_HOME/bin/startup.sh亦可(更适合脚本) 这时projectName.war将被展开,你将在/webapps

目录下发现porjectName文件夹 可以通过ip:8080/projectName/ 访问到项目起始页,如果有的话

/usr/local/tomcat8.5/bin/shutdown.sh 停止tomcat服务

ps -ef |grep tomcat 查看含tomcat的线程,一般有一个文件夹线程一行,还有一个一大堆就是tomcat的运行线程了

kill -9 [线程编号] 有时shutdown关不掉,只好杀线程

然后部署到其他目录

部署的几种方法:

1、上文基础中

2、使用Tomcat Client Deployer(TCD)需要安装,未尝试

3、修改user.xml文件,添加admin与manage组,添加有这两组权限的用户,然后可在ip:8080的管理部署,不议

4、修改Context标签及Host标签

vim /usr/local/tomcat8.5/conf/server.xml找到图中,上面还有端口可以改

Host主机,默认localhost,意义暂不明,相当于一个总包,关注他的属性

appBase为将自动获取WAR文件目录,同时也是其展开的目录(WEB-INF,MATE-INF在里面)

unpackWARs 为false时不对WAR展开,而是直接读取内容部署

autoDeploy 是否随tomcat启动自动部署


Context属性

A Context is what Tomcat calls a web application.官网说,即一个Context对应一个web应用

Context可以在

$CATALINA_BASE/conf/[enginename]/[hostname]/[webappname].xml -----a

$CATALINA_BASE / webapps /目录[webappname] /META-INF/context.xml -----b

这两个位置,在$CATALINA_BASE/conf目录下还有个Context.xml文件 -----c

a也可以写在server.xml的Host标签中,早期作法,现在不推荐

默认c,然后有a,b可覆盖c中默认值


我认为/usr/local/tomcat8.5/conf/Catalina/localhost/projectName.xml这个位置将是一个好的选择

Catalina为默认enginename,localhost默认主机名


<Context path="/jnshudemo" docBase="/home/ubuntu/tomcat/WebRoot/jnshudemo.war"

    workDir="/home/ubuntu/tomcat/work" debug="0" privileged="true" reloadable="true">

</Context>

这是我的内容,其中

path值为URL别名,即在这ip:8080/projectName/代替projectName

docBase为项目包所在地,可用相对路径,此处为绝对路径,jnshudemo.war这里是不是一点要有存疑,如果unpackWARs 为false时一点要有

workDir是这个应用的工作目录,class及jar库将在这里

debug日志等级

privileged允许应用内servlet

reloadable热部署,允许tomcat运行时修改web应用


时间关系,写完这个,今天日报就写到这里,







返回列表 返回列表
评论

    分享到