身为开发人员, 一直干着开发的事情, 只干开发的事情, 却缺少了对于环境部署方面的必备技能的培养, 所以在公司安排的手头任务解决完的情况下, 自己抽空了解并且实践了一下tomcat的配置。写下通过网络学习后的自我经验, 如果有同行看到了, 同时发现了不足或者说问题的, 还请多多指正, 谢谢。

导引

  • 下载Apache tomcat 压缩包
  • 部署项目
  1. 直接部署
  2. 通过修改配置文件部署

1.下载Apache tomcat 压缩包

前往Apache tomcat 官网下载, 直接下载Core下面的就好了, 我是直接下载zip的.

2.部署项目(不考虑tomcat端口被占用的情况)

2a. 直接部署

直接将打包好的war包放到webapps下面, 只要tomcat处于运行状态, 或在war包放置好之后, 再运行tomcat, 都会自动解压war包

2b. 通过修改配置文件部署

这个第二种方法, 提供的是可以将war放在非指定的webapps文件下面, 通过配置文件中指定的路径, tomcat会找到文件, 并解压到webapps目录下面

配置文件为server.xml, 修改示例如下:

<Host name="localhost"  appBase="webapps"
unpackWARs="true" autoDeploy="true"> <!-- Tomcat Manager Context --> <Context path="/xf-enuo" docBase="D:/xf-runProject/ROOT.war" debug="0" privileged="true" reloadable="true" /> <!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
--> <!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" /> </Host>

两种方式各有好处, 通过第二种的话, 本地开发时, 只要在本地的tomcat配置文件server.xml中配置开发项目的打包文件的路径, 在修改好代码后, 重新打包, 然后再重启tomcat, 就可以了. 但是第二种存在的一个问题是, 将war删除了, 不会自动解压出来的在webapps目录下的文件夹, 也就是说, 删除了, 但是之前项目还是在跑的[我自己亲自试过了],另外就算是替换了war包, 它也不会为你重新解压然后覆盖掉webapps目录下面的文件夹.  如果指定文件不存在了的话, tomcat在启动时是不成功的, 必须保证指定的文件存在.  而相对的, 第一种方法, war必须放在webapps目录下面, 但是当删除一个war的时候, tomcat会自动的帮我们把它对应的解压出来的文件一起删除掉, 这样的话, 多个项目只需要更替当中一个的时候, 这种方法就起到好的效果了, 因为如果tomcat重启的话, war都是会重新解压的, 而如果我们使用第一种, 只要tomcat启动着, 我们删除一个war包, 它就会帮我们删除运行的项目, 再提交tomcat只会对重新提交的war进行解压, 对于多项目而言, 第一种帮我们分离了项目, 所以我还是比较喜欢用第一种, 当然第二种可能是我没有学到家, 后期再抽空实践一下吧.

tomcat 搭建以及发布配置的更多相关文章

  1. 真分布式SolrCloud+Zookeeper+tomcat搭建、索引Mysql数据库、IK中文分词器配置以及web项目中solr的应用(1)

    版权声明:本文为博主原创文章,转载请注明本文地址.http://www.cnblogs.com/o0Iris0o/p/5813856.html 内容介绍: 真分布式SolrCloud+Zookeepe ...

  2. 搭建环境-Eclipse配置Tomcat创建Servlet总结

    Descripton:Web开发:Eclipse的下载与安装,Tomcat下载和结合Eclipse的使用,Eclipse使用Servlet[记录下总结下] 一.Eclipse的下载与安装 下载地址 注 ...

  3. linux环境下搭建环境发布web项目

    在公司真是学习了一下项目环境在linux下搭建和发布的过程,这是每个程序员都应该掌握的一个技能,将整理下为以后温习用,也乐于和为掌握这些技能的猿分享: 这里主要分为5部分:1.安装jdk,并配置环境变 ...

  4. Tomcat服务器的安装配置图文教程(推荐)

    现在将使用Tomcat的一些经验和心得写到这里,作为记录和备忘.如果有朋友看到,也请不吝赐教. 1.首先是Tomcat的获取和安装. 获取当然得上Apache的官方网站下载,开源免费,而且带宽也足够. ...

  5. nexus私服搭建及信息配置

    nexus私服搭建及信息配置 下载 登录nexus官网下载nexus安装包https://help.sonatype.com/repomanager2/download/download-archiv ...

  6. 使用Tomcat搭建基于域名的虚拟机

    Tomcat搭建基于域名的虚拟主机,实际就是实现了同一个Tomcat部署多个项目(网站/应用程序).端口可以使用同一个,也可以不同. (1).在tomcat的conf文件夹下存在Tomcat的配置文件 ...

  7. TomCat的安装与配置方法

    经过自己的研究,各种烦,所以要写个博客,帮助大家安装这个软件. 一.安装TomCat(因为大家都安装了jdk,所以就不写了) 1.下载TomCat 网址如下:http://tomcat.apache. ...

  8. TOMCAT的安装部署配置(配图解)

    TOMCAT的安装部署配置 前提已经成功搭建配置JDK 下载好压缩包后,直接解压至某一目录下,目录中不能包含中文 双击安装文件,出现如下界面 点击[NEXT],出现如下界面 点击[I AGREE],出 ...

  9. Ubuntu环境下Nutch+Tomcat 搭建简单的搜索引擎

    简易的搜索引擎搭建 我的配置: Nutch:1.2 Tomcat:7.0.57 1 Nutch设置 修改Nutch配置 1.1 修改conf/nutch-site.xml <?xml versi ...

随机推荐

  1. ORACLE修改表空间方法

    一.使用imp/exp.先导出源库,再创建新库把表空间创建好,然后再导入.(据说这样可以,前提是新的库里面不能有与源库相同名字的表空间.有待验证!) 二.使用脚本进行修改.据目前所了解,正长情况下需要 ...

  2. JVM类加载机制详解

    引言 如下图所示,JVM类加载机制分为五个部分:加载,验证,准备,解析,初始化,下面我们就分别来看一下这五个过程. 加载 在加载阶段,虚拟机需要完成以下三件事情: 1)通过一个类的全限定名来获取定义此 ...

  3. [GO]简单的并发服务器

    package main import ( "net" "fmt" "strings" ) func HandleConn(conn net ...

  4. Spring AOP 详解 【转】

      此前对于AOP的使用仅限于声明式事务,除此之外在实际开发中也没有遇到过与之相关的问题.最近项目中遇到了以下几点需求,仔细思考之后,觉得采用AOP 来解决.一方面是为了以更加灵活的方式来解决问题,另 ...

  5. 看图说说JVM内存

  6. 编写高质量代码改善C#程序的157个建议——建议87:区分WPF和WinForm的线程模型

    建议87:区分WPF和WinForm的线程模型 WPF和WinForm窗体应用程序都有一个要求,那就是UI元素(如Button.TextBox等)必须由创建它的那个线程进行更新.WinForm在这方面 ...

  7. 编写高质量代码改善C#程序的157个建议——建议86:Parallel中的异常处理

    建议86:Parallel中的异常处理 建议85阐述了如何处理Task中的异常.由于Task的Start方法是异步启动的,所以我们需要额外的技术来完成异常处理.Parallel相对来说就要简单很多,因 ...

  8. Appium命令行工作模式

    前面如何快速搭建基于python+appium的自动化测试环境介绍过安装Appium-desktop的客户端版本,然后每次需要运行脚本的时候都要先去找到Appium应用并双击打开,再点击Start S ...

  9. android hook getdeceiveid

    很多手机软件使用了手机绑定.QQ,微信等.如果使用了不同的设备,则需要验证码. 要用一台手机来模拟与另一台手机一样环境,估计hook 系统的相关函数可以实现. 想着应该有现成的软件的,例如 smart ...

  10. C#+MVC+EF+LayUI框架的应用(附带源码和教程)

    内容: 1.该框架主要用到的技术有MVC,EF,Layer,以及Razor语法和数据库有关的操作. 2.框架二次开发(增加,删除,修改,建库,以及维护查询等) 3.框架公用库更新要求与规范 4.本框架 ...