​Tomcat服务器 应用与部署技术 学习笔记

  • 来源:
  • 更新日期:2018-05-03

摘要:Tomcat服务器 应用与部署技术  学习笔记  本文目录      学习小结       1、Tomcat服务器概述      2、安装Tomcat服务器       3、常见启动问题      4、Tomcat服务器  的目录层次结构      5、Web应用程序中一些概念      6、虚似目录的映射方式一 :在server.xml文件的host元素中配置:

Tomcat服务器 应用与部署技术 学习笔记

本文目录

timg.jpg

 

学习小结

 

1、Tomcat服务器概述

 

2、安装Tomcat服务器

 

3、常见启动问题

 

4、Tomcat服务器的目录层次结构

 

5、Web应用程序中一些概念

 

6、虚似目录的映射方式一:在server.xml文件的host元素中配置:

 

7、虚似目录的映射方式二:以创建Xml文件的方式映射

 

8、虚似目录的映射方式三:让Tomcat自动映射

 

9、Web应用的组成结构

 

10、web.xml文件介绍

 

11、配置虚似主机

 

12、图解演示web资源的访问过程

 

13、打包web应用—制作war包

 

14、配置context元素的reloadable元素

 

15、Tomcat体系架构图

 

16、配置https加密连接器

 

17、使用Tomcat服务器的管理平台

 

18、图解软件开发的两种架构:c/s和b/s

 

 

 


 

 

学习小结

 

(1)虚似目录的映射

 

a.开发阶段:可采用Tomcat自动映射方式:将Web应用放到Tomcat服务器的webapps目录下。

 

b.发布阶段:采用Xml文件的方式:避免修改后还需要重启服务器。

 

设置方式:在目录“系统盘符:Tomcat根目录名conf引擎名主机名”中,新建一个Xml文件

 

文件名称<-->虚拟目录名:单层路径:byd.xml<-->byd

 

多层路径:a#bc#atf.xml<-->a/bc/atf

 

缺省路径:Root.xml<-->省略不写

 

 

 

(2)配置虚似主机

 

a.配置server.xml文件

 

<Hostname="www.google.com"appBase="e:google">

 

<Contextpath="/ggg"docBase="E:googlemail"/>

 

</Host>

 

b.注册虚拟主机

 

路径:C:WINDOWSsystem32driversetchosts

 

配置内容:“ip地址主机名称”eg:61.135.169.125www.baidu.com

 

c.缺省虚似主机:

 

例:<Enginename="Catalina"defaultHost="localhost">

 

 

 

(3)打包web应用--制作war包

 

方式:命令行中:cd进入到Web应用同级目录中,

 

输入例如:jar-cvfnews.warnews

 

 

 

(4)使用Tomcat服务器的管理平台

 

a.配置Tomcat的管理员权限

 

打开conf文件夹中的tomcat-users.xml,在<tomcat-users>标签内填写代码:【粗体部分可自定义】

 

<rolerolename="manager"/>

 

<userusername="tomcat"password="tomcat"roles="manager"/>

 

b.进入Tomcat管理平台

 

启动Tomcat,在Tomcat欢迎页面中点击TomcatManager,输入设定的账号和密码,进入平台。

 

 


 

1、Tomcat服务器概述

 

Tomcat服务器是适合小型的应用系统或者有特殊需要的系统的免费的Web服务器,该服务器支持全部JSP以及Servlet规范(注:其他11种J2EE规范不支持,但也足够用了,绝大部分对安全性要求不是很高的网站都在用,包括Google都在用。)

 


 

 

 

2、安装Tomcat服务器

 

获取Tomcat

 

tar.gz文件是Linux操作系统下的安装版本

 

exe文件是Windows系统下的安装版本

 

zip文件是Windows系统下的压缩版本(推荐使用:配置错误后可立刻删除,重新解压获得一份全新Tomcat)

 

安装Tomcat:双击bin目录下的startup.bat文件

 

 

 

 

 

3、常见启动问题

 

(1)启动程序一闪而过:原因是Java_home环境变量需要配置,在windows中设置java_home环境变量。只要在 setclasspath.bat批处理文件第一次使用JAVA_HOME环境变量之前的任何地方,将JAVA_HOME环境变量设置为JDK的主目录, 就可以使用startup.bat文件启动Tomcat了。

 

(2)端口占用问题:在conf文件夹下的server.xml文件中修改<Conector/>标签中的port(端口)属性值。

 

(3)多份解压Tomcat程序使用目录位置不正确:这是Catalina_home环境变量的设置问题:当有多份Tomcat压缩包 时,该变量将设定唯一被启动Tomcat包的位置,这关系到发布的Web文件存在于哪份压缩包的目录下。建议发布时一定要设置,平时开发不要设置(不设置 时,默认启动当前包)。

 


 

 

 

4、Tomcat服务器的目录层次结构
 

 

 

 

 

 


 

 

 

5、Web应用程序中一些概念

 

(1)Web应用程序:指供浏览器访问的程序,通常也简称为web应用。一个web应用由多个静态web资源和动态web资源组成,如:

 

html、css、js文件

 

Jsp文件、Java程序、支持jar包、

 

配置文件等等…..

 

(2)Web应用所在目录:组成web应用的这些文件通常我们会使用一个目录组织,这个目录称之为web应用所在目录。

 

(3)虚似目录的映射:Web应用开发好后,若想供外界访问,需要把web应用所在目录交给web服务器管理,这个过程称之为虚似目录的映射。

 


 

 

 

6、虚似目录的映射方式一:在server.xml文件的host元素中配置

 

例如:

 

<Hostname="localhost"appBase="webapps"unpackWARs="true"autoDeploy="true"
xmlValidation="false"xmlNamespaceAware="false">

 

<Contextpath="/bbb"docBase="E:baidunews"/>

 

</Host>

 

【备注:此种方式的缺点是修改配置后,必须得重新启动服务器才能生效。Tomcat6.0开始不建议使用】

 

补充知识点:

 

映射缺省web应用:将path的值设为空。eg:<Contextpath=""docBase="c:app"/>则在地址栏的访问路径中就不需要出现目录的部分

 

注意:一个Context即代表一个web应用,context元素在配置文件中除用于映射虚似目录外,它还可用于为web应用配置一些资源,例如:配置web应用使用的数据库连接池,javamailsession等(这些配置以后会用到)。

 

 

 


 

 

 

7、虚似目录的映射方式二:以创建Xml文件的方式映射

 

在目录“系统盘符:Tomcat根目录名conf引擎名主机名”中,新建一个Xml文件,该文件名即为虚拟目录名称,而内容是<ContextdocBase="c:app"/>

 

eg:D:apache-tomcat-6.0.35confCatalinalocalhost中建立文件byd.xml。

 

备注:引擎名和主机名是根据实际的配置进行更改的,后面章节会讲解。

 

A.单层路径:该文件名即为虚拟目录名称

 

例如:文件名:byd.xml,则虚拟目录名:byd。

 

 

 

B.多层路径名:该Xml文件的名称需要使用#参与命名。

 

例如:文件名:a#bc#atf.xml。则虚拟目录名称:a/bc/atf

 

 

 

C.默认缺省路径名:需要使用特定文件名称“Root.xml”

 

 

 

优点:修改虚拟目录映射后,不需要重新启动服务器就可以直接应用。这是工作中发布Web应用常用的配置方式。

 

备注:方法2可查阅Tomcat文档:启动Tomcat后

 

查阅Introduction部分的内容即可看到。在Tomcat6中,不再建议在server.xml文件中配置context元素,细节查看tomcat服务器关于context元素的说明。

 

 

 

 

 

 

 


 

 

 

8、虚似目录的映射方式三:让Tomcat自动映射

 

Tomcat服务器会自动管理webapps目录下的所有web应用,并把它映射成虚似目录。换句话说,Tomcat服务器webapps目录中的web应用,外界可以直接访问。

 

 

 


 

 

 

9、Web应用的组成结构

 

开发web应用时,不同类型的文件有严格的存放规则,否则不仅可能会使web应用无法访问,还会导致web服务器启动报错。

 

 

 

 

 


 

 

 

10、web.xml文件介绍

 

web.xml文件是整个web应用中最重要的配置文件,它必须放在WEB-INF目录中。

 

在开发web应用时,但凡涉及到对web应用中的web资源进行配置,通通是在web.xml文件中进行设置。

 

例如:

 

某个web资源配置为网站首页

 

将servlet程序映射到某个url地址上

 

为web应用配置监听器

 

为web应用配置过滤器

 

……

 

 

 


 

 

 

11、配置虚似主机

 

在一个tomcat服务器中可以放置多个网站,而所谓的配置虚似主机,就是在tomcat服务器中配置一个网站。

 

(1)配置虚似主机:如需在WEB服务器中配置一个网站,则要使用Host元素进行配置,

 

配置方式:<Hostname=”虚拟主机名称”appBase=”主机程序所在目录的绝对路径地址”></Host>

 

例:

 

<Hostname="www.google.com"appBase="e:google">

 

<Contextpath="/ggg"docBase="E:googlemail"/>

 

</Host>

 

 

 

(2)注册虚拟主机:配置的主机(网站)要想被外部访问,必须在DNS服务器或操作系统中注册。

 

windows系统中注册方法:打开hosts文件,

 

路径:C:WINDOWSsystem32driversetchosts

 

配置内容:“ip地址主机名称”eg:61.135.169.125www.baidu.com

 

备注:可配置多个网站。

 

 

 

(3)配置缺省虚似主机:当时使用数字形式的IP地址访问某个主机时,就没有指定要访问哪台虚拟主机,这时候就要有一台缺省的默认虚拟主机响应访问。

 

配置方式:在server.xml文件中的<Enginename="Catalina"defaultHost="虚似主机名称">配置

 

例:<Enginename="Catalina"defaultHost="localhost">

 

 

 

【小知识:获取网络上某网站主机的IP地址:在命令行中,输入:ping网址全名,回车即得。如:pingwww.baidu.com+回车键】

 


 

 

 

12、图解演示web资源的访问过程

 

 

 

 

 


 

 

 

13、打包web应用—制作war包

 

war包的好处是远程上传到服务器后会自动解压。

 

打包方法:利用JDK自带的打包工具“jar.bat”来实现打包功能。

 

命令行:第一步:cd进入到Web应用同级目录中

 

第二步:输入“jar-cvfWeb应用所在目录名称.warWeb应用所在目录名称”

 

例:jar-cvfnews.warnews

 

 

 


 

 

 

14、配置context元素的reloadable元素

 

配context元素的reloadable元素:<ContextdocBase="c:app"reloadable="true"/>,让Tomcat自动加载web应用目录下更新后的所有程序。

 

备注:开发小程序时可以考虑使用,若是稍微大一点的Web应用,则会因为频繁的自动加载整个应用,导致计算机的内存和CPU被严重占用,会影响计算机的响应性能,甚至是死机,进而影响开发的效率。所以在开发中,不要使用该功能。

 

 

 


 

 

 

15、Tomcat体系架构图

 

 

 

 

 


 

 

 

16、配置https加密连接器

 

(1)非对称加密算法原理图解:公钥私钥

 

 

 

 

 

(2)启动JDK中keytool工具制作数字证书

 

命令行中:keytool-genkey-aliastomcat-keyalgRSA重要命令解释如下:

 

a.输入keystore密码——此密码在配置server.xml文件向客户端发送数字证书时需要使用。

 

b.您的名字和姓氏是什么?——请输入主机名称。eg:www.sina.com,即访问谁时需要证书。

 

c.其他的命令标题就无所谓了。

 

可将生成的证书《.keystore》文件,放在Tomcat中的conf文件夹下面待用。

 

 

 

 

(3)配置server.xml,将服务器的数字证书自动发给给客户端浏览器。

 

在server.xml文件中,复制激活一份

 

<Connectorport="8443"protocol="HTTP/1.1"SSLEnabled="true"maxThreads="150"

 

scheme="https"secure="true"clientAuth="false"sslProtocol="TLS"

 

keystoreFile="conf/.keystore"keystorePass="123456"/>【粗体部分据实填写】

 

(4)浏览器安装数字证书,采用https进行加密连接器发送加密数据。

 

在浏览器访问地址要使用https协议开头访问,接收并安装服务器传过来的数字证书。

 

(5)备注:本例作为加密连接技术的入门级范例,仅仅为单向加密“客户端加密-->服务器”,真正开发中是需要使用双向加密连接的,这种技术的范例可以参加我的博文,也可以到网上查找相关的文章。

 


 

 

 

17、使用Tomcat服务器的管理平台

 

(1)配置Tomcat的管理员权限

 

打开conf文件夹中的tomcat-users.xml,在<tomcat-users>标签内填写代码:【粗体部分可自定义】

 

<rolerolename="manager"/>

 

<userusername="tomcat"password="tomcat"roles="manager"/>

 

(2)进入Tomcat管理平台

 

启动Tomcat,在Tomcat欢迎页面中点击TomcatManager,输入设定的账号和密码,进入平台。

 

(3)远程连接在管理平台中管理Web应用

 

例如:Undeploy:卸载应用;

 

WARfiletodeploy:远程上传war文件并部署Web应用

 

(4)备注:关闭管理员权限

 

该管理员权限关系到服务器应用的安全性,非必要时一定要在tomcat-users.xml将其进行注释,关闭账户。

 


 

 

 

18、图解软件开发的两种架构:c/s和b/s