Tomcat配置技巧

阳光的晓宇哥

阳光的晓宇哥

2016-02-19 19:26

想不想get新技能酷炫一下,今天图老师小编就跟大家分享个简单的Tomcat配置技巧教程,一起来看看吧!超容易上手~

  1、配置系统管理(Admin Web Application)

  大多数商业化的J2EE服务器 都提供一个功能强大的管理界面,且大都采用易于理解的Web应用界面。Tomcat按照自己的方式,同样提供一个成熟的管理工具,并且丝毫不逊于那些商业 化的竞争对手。Tomcat的Admin Web Application最初在4.1版本时出现,当时的功能包括管理context、data source、user和group等。当然也可以管理像初始化参数,user、group、role的多种数据库管理等。在后续的版本中,这些功能将得 到很大的扩展,但现有的功能已经非常实用了。Admin Web Application被定义在自动部署文件:CATALINA_BASE/webapps/admin.xml 。(译者注:CATALINA_BASE即tomcat安装目录下的server目录)

  你必须编辑这个文件,以确定Context中的docBase参数是绝对路径。也就是说,CATALINA

  _BASE/webapps/admin.xml 的路径是绝对路径。作为另外一种选择,你也可以删除这个自动部署文件,而在server.xml文件中建立一个Admin Web Application的context,效果是一样的。你不能管理Admin Web Application这个应用,换而言之,除了删除CATALINA_BASE/webapps/admin.xml ,你可能什么都做不了。

  如果你使用UserDatabaseRealm(默认),你将需要添加一个user以及一个role到CATALINA_BASE/conf/tomcat-users.xml文件中。你编辑这个文件,添加一个名叫“admin”的role 到该文件中,如下:

  role name="admin"/

  同样需要有一个用户,并且这个用户的角色是“admin”。象存在的用户那样,添加一个用户(改变密码使其更加安全):

  ser name="admin"
  password="deep_dark_secret"
  roles="admin"/

  
  你 完成这些步骤后,请重新启动Tomcat,访问http://localhost:8080/admin,你将看到一个登录界面。Admin Web Application采用基于容器管理的安全机制,并采用了Jakarta Struts框架。一旦你作为“admin”角色的用户登录管理界面,你将能够使用这个管理界面配置Tomcat。

  2、配置应用管理(Manager Web Application)

  Manager Web Application让你通过一个比Admin Web Application更为简单的用户界面,执行一些简单的Web应用任务。Manager Web Application被被定义在一个自动部署文件中:

  ?CATALINA_BASE/webapps/manager.xml

  你必须编辑这个文件,以确保context的docBase参数是绝对路径,也就是说CATALINA_HOME/server/webapps/manager的绝对路径。(译者注:CATALINA_HOME即tomcat安装目录)

  如果你使用的是UserDatabaseRealm,那么你需要添加一个角色和一个用户到CATALINA_BASE/conf/tomcat-users.xml文件中。接下来,编辑这个文件,添加一个名为“manager”的角色到该文件中:

  role name=”manager”

  同样需要有一个角色为“manager”的用户。像已经存在的用户那样,添加一个新用户(改变密码使其更加安全):

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

  user name="manager"
  password="deep_dark_secret"
  roles="manager"/

  然 后重新启动Tomcat,访问http://localhost/manager/list,将看到一个很朴素的文本型管理界面,或者访问http: //localhost/manager/html/list,将看到一个HMTL的管理界面。不管是哪种方式都说明你的Manager Web Application现在已经启动了。

  Manager application让你可以在没有系统管理特权的基础上,安装新的Web应用,以用于测试。如果我们有一个新的web应用位于 /home/user/hello下在,并且想把它安装到/hello下,为了测试这个应用,我们可以这么做,在第一个文件框中输入“/hello”(作 为访问时的path),在第二个文本框中输入“file:/home/user/hello”(作为Config URL)。

  Manager application还允许你停止、重新启动、移除以及重新部署一个web应用。停止一个应用使其无法被访问,当有用户尝试访问这个被停止的应用时,将 看到一个503的错误??“503 - This application is not currently available”。

  移除一个web应用,只是指从Tomcat的运行拷贝中删除了该应用,如果你重新启动Tomcat,被删除的应用将再次出现(也就是说,移除并不是指从硬盘上删除)。?

  3、部署一个web应用

  有两个办法可以在系统中部署web服务。

  1. 拷贝你的WAR文件或者你的web应用文件夹(包括该web的所有内容)到$CATALINA_BASE/webapps目录下。

  2. 为你的web服务建立一个只包括context内容的XML片断文件,并把该文件放到$CATALINA_BASE/webapps目录下。这个web应用本身可以存储在硬盘上的任何地方。

  如 果你有一个WAR文件,你若想部署它,则只需要把该文件简单的拷贝到CATALINA_BASE/webapps目录下即可,文件必须以“.war”作为 扩展名。一旦Tomcat监听到这个文件,它将(缺省的)解开该文件包作为一个子目录,并以WAR文件的文件名作为子目录的名字。

  接下来,Tomcat将在内存中建立一个context,就好象你在server.xml文件里建立一样。当然,其他必需的内容,将从server.xml中的DefaultContext获得。

  部署web应用的另一种方式是写一个Context XML片断文件,然后把该文件拷贝到CATALINA_BASE/webapps目录下。一个Context片断并非一个完整的XML文件,而只是一个context元素,以及对该应用的相应描述。

  这种片断文件就像是从server.xml中切取出来的context元素一样,所以这种片断被命名为“context片断”。

  举个例子,如果我们想部署一个名叫MyWebApp.war的应用,该应用使用realm作为访问控制方式,我们可以使用下面这个片断:

  !--
  Context fragment for deploying MyWebApp.war
  --
  Context path="/demo"
  docBase="webapps/MyWebApp.war"
  debug="0" privileged="true"
  Realm className=
  "org.apache.catalina.realm.UserDatabaseRealm"
  resourceName="UserDatabase"/
  /Context

  把该片断命名为“MyWebApp.xml”,然后拷贝到CATALINA_BASE/webapps目录下。

  这种context片断提供了一种便利的方法来部署web应用,你不需要编辑server.xml,除非你想改变缺省的部署特性,安装一个新的web应用时不需要重启动Tomcat。

  4、配置虚拟主机(Virtual Hosts)

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)

  关 于server.xml中“Host”这个元素,只有在你设置虚拟主机的才需要修改。虚拟主机是一种在一个web服务器上服务多个域名的机制,对每个域名 而言,都好象独享了整个主机。实际上,大多数的小型商务网站都是采用虚拟主机实现的,这主要是因为虚拟主机能直接连接到Internet并提供相应的带 宽,以保障合理的访问响应速度,另外虚拟主机还能提供一个稳定的固定IP。

  基于名字的虚拟主机可以被 建立在任何web服务器上,建立的方法就是通过在域名服务器(DNS)上建立IP地址的别名,并且告诉web服务器把去往不同域名的请求分发到相应的网页 目录。因为这篇文章主要是讲Tomcat,我们不准备介绍在各种操作系统上设置DNS的方法,如果你在这方面需要帮助,请参考《DNS and Bind》一书,作者是Paul Albitz and Cricket Liu (O'Reilly)。为了示范方便,我将使用一个静态的主机文件,因为这是测试别名最简单的方法。

  在Tomcat中使用虚拟主机,你需要设置DNS或主机数据。为了测试,为本地IP设置一个IP别名就足够了,接下来,你需要在server.xml中添加几行内容,如下:

  Server port="8005"
  shutdown="SHUTDOWN" debug="0"
  Service name="Tomcat-Standalone"
  Connector className=
  "org.apache.coyote.tomcat4.CoyoteConnector"
  port="8080"
  minProcessors="5" maxProcessors="75"
  enableLookups="true"
  redirectPort="8443"/
  Connector className=
  "org.apache.coyote.tomcat4.CoyoteConnector"
  port="8443" minProcessors="5"
  maxProcessors="75"
  acceptCount="10" debug="0"
  scheme="https" secure="true"/
  Factory className="org.apache.coyote.
  tomcat4.CoyoteServerSocketFactory"
  clientAuth="false" protocol="TLS" /
  /Connector
  Engine name="Standalone"
  defaultHost="localhost" debug="0"
  !-- This Host is the default Host --
  Host name="localhost"
  debug="0" appBase="webapps"
  unpackWARs="true" autoDeploy="true"
  Context path="" docBase="ROOT" debug="0"/
  Context path="/orders"
  docBase="/home/ian/orders" debug="0"
  reloadable="true" crossContext="true"
  /Context
  /Host

  !-- This Host is the first
  "Virtual Host": http://www.example.com/ --
  Host name="www.example.com"
  appBase="/home/example/webapp"
  Context path="" docBase="."/
  /Host

  /Engine
  /Service
  /Server

  Tomcat 的server.xml文件,在初始状态下,只包括一个虚拟主机,但是它容易被扩充到支持多个虚拟主机。在前面的例子中展示的是一个简单的 server.xml版本,其中粗体部分就是用于添加一个虚拟主机。每一个Host元素必须包括一个或多个context元素,所包含的context元 素中必须有一个是默认的context,这个默认的context的显示路径应该为空(例如,path=””)。

展开更多 50%)
分享

猜你喜欢

Tomcat配置技巧

Web开发
Tomcat配置技巧

Tomcat配置技巧Top 10

Java JAVA基础
Tomcat配置技巧Top 10

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Tomcat配置 Tomcat6怎么安装

电脑入门
Tomcat配置 Tomcat6怎么安装

Tomcat JSP经典配置实例

Web开发
Tomcat JSP经典配置实例

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

tomcat环境变量配置图解

电脑
tomcat环境变量配置图解

zip版本Tomcat配置新手入门

Java JAVA基础
zip版本Tomcat配置新手入门

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

一个非常简单的分页技术MYSQL+JSP 利用了mysql的LIMIT参数

一个非常简单的分页技术MYSQL+JSP 利用了mysql的LIMIT参数

Windows 8.1(Blue)build 9369安装全过程

Windows 8.1(Blue)build 9369安装全过程
下拉加载更多内容 ↓