开始之前
了解本教程中包含的内容以及如何最好地利用本教程 。
关于本教程
您希望(或需要)安装功能齐全的应用程序服务器来开发、测试、部署和优化 Java? 2 Platform, Enterprise Edition (J2EE?) 应用程序?或者,也许您只是希望了解一些新知识,因此您决定建立自己的应用程序服务器环境 。您将从哪里开始着手?
无论您的动机如何,如果您在阅读本教程,您很可能熟悉有关网站如何工作的基础知识,以及从浏览器访问应用程序可能需要什么最低公共标准(域、代码、Web 浏览器、数据库,等等) 。只要您掌握了基础知识,具有对 Web 或应用程序服务器的需要,能够访问 Unix 服务器,并且渴望了解有关 Web 服务器管理的点滴,那么本教程就是为您准备的 。
目标
在本教程中,您将了解:
有关 Apache Tomcat 和 UNIX 的介绍,以及让您开始起步所需要的知识 。
企业与独立 Web 体系结构之比较 。
如何从头设置 UNIX 服务器,以便为 Web 或应用程序服务器的安装做好准备 。
有关如何安装和启动 Tomcat Web 服务器的详细、循序渐进的说明 。
有关设置 Tomcat Web Application Manager 访问的信息 。
用于部署示例应用程序的说明 。
其他资源 。
先决条件
本教程假设您已经安装了所选择的基本 UNIX 操作系统 。要运行本教程中的示例,您还必须安装并运行 Tomcat 版本 6 。
系统要求
服务器应该至少有 10GB 的可用硬盘空间和最低 512MB 的内存 。在开始之前,您需要在 UNIX 服务器上安装以下附加工具:
Web 浏览器:任何浏览器都行 。
Java 2 Standard Edition Runtime Environment (JRE) 5.0 发布版或更新版本:Apache Tomcat 版本 6 需要该 JRE 。
C 编译器:遗憾的是,诸如 Solaris 和 IBM?AIX?等主流的 UNIX 版本没有附带这样的编译器 。有关更多信息,请参阅参考资料中指向 GNU GCC 文章的链接 。
文件提取工具:在您的服务器上,您很可能需要 gunzip、tar、bzcat,并且可能需要 GNU make 和 tar(gmake、gtar——可从 GNU 站点下载),以正确地提取文件 。要检查服务器上已经有哪些工具在运行,可以运行以下命令:
cd /usr
Find . –name *.tar (repeat for *make, *zip, etc.)
Tomcat 代码:在继续之前,您需要从 Apache 下载站点下载 Tomcat 版本 6 的代码 。将 tar.gz 文件保存到您的服务器 。
Tomcat 与 UNIX
本教程的目的不是为您提供与 Tomcat 相关的所有内容的权威指南,而是让您迅速奠定有关独立开发或测试服务器环境的扎实知识基础 。当您具备这样的基础时,如果乐意的话,可以将其扩展到全面的企业环境 。
为什么使用 Tomcat?
为什么应该使用 Tomcat 而不是使用诸如 Jboss、Geronimo 或 WebSphere Application Server Express 等备选方案呢?
Tomcat 版本 6 本身是一个轻量级的解决方案 。它没有附带所有的 Java Platform, Enterprise Edition (Java EE) 功能以及可在 Jboss、Geronimo 和 IBM WebSphere?Application Server Express 中找到的附加软件包,但它也不需要多少内存,即使在较小的服务器上也运行得非常快速 。此外,它还是免费可用的 。
Tomcat 是一个 JavaServer? Pages (JSP)/Servlet 容器,仅支持基本的 Java 应用程序服务器功能 。它缺乏可伸缩性和 Java EE 版本 5 遵从性,这就是很少在生产环境中使用它的原因 。
如果您希望在企业环境中使用新服务器,更显而易见的 UNIX 版本是 AIX 和 Solaris 。事实上,Solaris 拥有最高的企业市场份额百分比 。其他 UNIX 选择包括 FreeBSD 和 Mac OS X 。
Tomcat 的 UNIX 和 Windows?安装
可以在 Windows 计算机上运行本教程中的示例 。在经过多年仅迎合 UNIX 以后,Apache 社区通过为 Windows 平台进行开发而实现了此功能 。然而,取决于您所查对的统计数据,90% 以上的 Web 服务器体系结构解决方案中都使用了 Apache Web 服务器和后续产品 。长话短说,UNIX 提供了纯多用户操作系统的稳定性、安全性和简单性,这是 Windows Server?操作系统所无法比拟的 。
话虽这样说,但是如果您决定使用 Windows,您应该在继续之前注意 UNIX 与 Windows 之间的 Tomcat 设置所存在的一些区别:
在 UNIX 服务器上提取初始安装文件可能需要 bzcat、gunzip 和 tar 或 gtar 。Windows 服务器计算机通常使用 WinZip 或类似的实用工具 。
UNIX 服务器上的 PATH 设置更加明显 。Windows 仍然使用 path 语句,但大部分设置是在幕后或在安装软件时自动完成的 。
UNIX 设置和配置中的权限注意事项更为重要 。UNIX 服务器的卓越安全强度也是问题的一个最大根源:权限问题 。在初始安装软件时,您需要正确的权限才能将软件写入到基本操作系统的文件系统——/var、/tmp,等等 。此外,在将各种内部和外部软件组件连接到 UNIX 服务器时,始终要注意权限注意事项 。始终要考虑到 ID、组和正确的访问权限 。
在 Windows 中,安装是基于图形用户界面 (GUI) 的,而 UNIX 传统地使用命令行界面 (CLI) 。这种情况随着 Gnome 和其他图形环境的推出而有所改变,包括日益流行的 Mac OS X 版本 10.5 Leopard 。然而,纯粹主义者始终钟情于 CLI 。此外,CLI 也是最好的学习方式 。
Windows 使用 .bat 文件表示自动化的批处理过程,使用 .exe 文件表示可执行文件 。UNIX 缺省使用 .sh 或 .ksh 文件扩展名表示可执行脚本等等 。.sh 或 .ksh 格式取决于您使用哪一种 Shell 。
Tomcat 版本
面对每个版本中包括的众多修补程序、调整、新功能或执行旧任务的新方法,有时很难决定应该选择使用哪一个软件版本 。在 Tomcat 中,您将面对同样的问题 。我建议您考虑表 1 中的详细信息,以使您的管理服务器与用于对正在部署的应用程序进行编码的 J2EE 规范相匹配 。
表 1. 与 Tomcat 版本相关的 JSP 规范
JSP 规范Tomcat 版本2.5/2.16.0.x2.4/2.05.5.x2.3/1.24.1.x2.2/1.13.3.x(已存档)
另一种决定软件版本的不那么技术性的方法,是坚持使用您希望使用的软件的最新稳定版本 。通常,您将获得所有的最新安全修补程序和功能 。
体系结构概述
了解 Tomcat 的局限性以及典型的企业环境是如何设置的 。
局限性
您的 Tomcat 安装是否需要是纯开发环境中的单一服务器?这不是非常有限制性吗?是的,事实上就是这样!Tomcat 实际上已被下载了数百万次,并成功地在生产环境中运行着许多著名的网站 。然而,它具有其局限性 。
可以使用商业软件产品——特别是 IBM WebSphere Application Server,主要是由于它们完全的 J2EE 遵从性、附加的功能和安全性,它们对生产环境来说远远更加优异 。如果您希望在全功能的生产环境中实现 Tomcat,您仍然可以使用本教程来奠定基础 。
企业环境
如图 1 所示的企业体系结构,差不多就是当您在浏览器中按下 Enter 键时,可能在幕后看到的内容的精确描述 。该体系结构由重复的元素包组成,我看到这些元素正在为众多的客户工作着,包括 IBM 和美国空军的价值数百万美元的任务关键型应用程序 。下面几个部分将详述图 1 中的每个方面 。
图 1. 示例企业体系结构
A. 网络保护措施
通常,您的网络拥有相应的保护措施——路由器或防火墙,然后是代理服务器(明确地说是反向代理),它们使 Web 请求与适当的域匹配 。甚至在请求到达可能由安全隔离区域(demilitarized zone,DMZ)保护的网络中的第一台服务器之前,前端 IBM Tivoli?Access Manager (TAM)/TAM WebSEAL 服务器上就可能已经存在某种级别的身份验证甚至授权 。
B. Web 服务器
接下来是 Web 服务器 。请注意,所有这些服务器都可能具有垂直和 水平故障转移功能,这意味着在每个级别被克隆(甚至可能在软件级别重复)的单独硬件 。当 Web 服务器传递 Web 请求并执行其提供静态内容的职责时,您可能还有另一层执行附加路由的网络分配器(network dispatcher,ND),或者至少也是某个插件(例如 IBM HTTP Server [IHS] 插件) 。
C. 应用程序服务器(Servlet 引擎)
现在您已经有了 J2EE 引擎 (WebSphere Application Server),它很可能包括 Web 或 Servlet 容器以及 Enterprise JavaBean (EJB) 容器,以处理基本和高级的 Java 功能及业务逻辑 。您可能采用多个适配器来做许多事情,包括连接 Web 服务和 IBM WebSphere MQ 消息 。而且,您多半拥有一个连接到 MySQL、IBM DB2?或 Oracle 后端的数据库连接池 。
当您与到轻量级目录访问协议(Lightweight Directory Access Protocol,LDAP)服务器甚至遗留服务器的潜在连接结为一体时,您就拥有了真正的 N 层体系结构 。下面,参考一个入门级 Web 服务器环境 。
开发环境
查看图 2,并假设它基于某个单一 UNIX 操作系统上的单一服务器安装,该操作系统具有某些通过浏览器访问 Internet 的途径 。该服务器将包含您的 Tomcat 安装、各种操作系统级别的工具,以及(可能)您自己的本地数据库,或者至少包括保存在本地存储库(本地目录结构)中的软件和应用程序代码 。
注意:当我提到 Tomcat 服务器 时,我指的是整个容器 。
图 2. 示例独立服务器体系结构
虽然这一点也不像真正的企业体系结构,但是您至少能够从自己的服务器中重复基本的应用程序功能 。这个服务器的功能将会有很多的限制,但是无论从哪点看,您都是将此安装视为一个示例测试开发服务器,或者如果您是管理员的话,则只是将其视为用于在其中进行试验的服务器 。
您可以选择与 Tomcat 安装一起设置和运行单独的 Apache HTTP Server 前端,但是就本教程而言,并不演示此操作方法,因为这样需要更多的开销和更多的管理和设置工作 。您还需要 mod_jk 模块,您将必须设置正确的路由,等等 。
无论采用哪种方式,下面让我们在继续进行安装和配置之前,首先讨论一些常见问题 。
准备服务器
通过配置变量、编辑配置文件、创建用户等来准备您的服务器 。
设置路径
除了必须在服务器上安装的工具以外,您需要正确设置 Shell 的所有 PATH 变量设置 。PATH 变量告诉 Shell 在何处寻找某些软件安装、工具等等 。
JAVA_HOME
首先,您必须根据该版本中包括的说明来安装 JRE 。我通常选择使用完整的 Java 软件开发工具包 (JDK) 而不只是 JRE 。如果您也是这样,可以将 JAVA_HOME 环境变量设置为您安装 JDK 的目录的路径名称(例如,/usr/local/java/j2sdk5.0) 。可以使用以下代码来设置 JAVA_HOME 变量:
bash-3.00# export JAVA_HOME=/usr/jdk/instances/jdk1.5.0
您还可以运行:
JAVA_HOME=/usr/bin/java; export JAVA_HOME'
(实际上不存在区别) 。
输入 echo 命令以复查上述命令已生效:
bash-3.00# echo $JAVA_HOME
/usr/jdk/instances/jdk1.5.0
CATALINA_HOME(Tomcat 的缺省主目录)
CATALINA_HOME 用于引用发布版本目录的完整路径名称 。可以使用以下代码在您的服务器上设置此变量:
bash-3.00# export CATALINA_HOME=/opt/apache-tomcat-6.0.16
此代码特定地与已安装的 Tomcat 版本相关 。如有疑问,可以按照您提取的 .tar 文件进行命名,因为您提取的 .tar 文件的名称中携带有正确的版本号 。
在您的用户身份下编辑 Shell 和配置文件
您也许注意到了,我在命令示例中有几次引用了 Bash 。长话短说,登录 UNIX 的用户在服务器上运行 Shell,以执行允许他们导航和管理服务器的 CLI 。这与其他操作系统并没有什么不同,只不过更加灵活,因为您可以通过输入某个内容来定义该 Shell,例如 Bourne Shell (sh) 或 Bourne-again Shell (bash) 。
此外,取决于您使用的 Shell,您可以编辑 CLI 的自定义 Shell 配置文件,以自动设置 PATH 变量,甚至设置别名字符来表示服务器上有用的常用命令 。为此,可以编辑 .bashrc、.profile(Bash Shell 下的缺省配置文件)等等 。可以使用 vi 编辑器来创建此文件,然后在您的 root、个人或特定于 Tomcat 的用户 ID 下适当地编辑该文件,以确保在您每次登录服务器时设置 PATH 变量 。
在您的主目录下,使用标准 UNIX 编辑器 vi 创建 .profile 文件(如清单 1 所示)——如果该文件还不存在的话 。
清单 1. 使用标准 UNIX 编辑器创建 .profile
cd ~/ (home dir)
vi .profile
输入 i(表示进入“插入模式),然后添加您在上面设置的每个路径 。一个示例可能类似如下所示:
# /bin/sh
stty istrip
PATH=$PATH:/usr/bin:/usr/local/bin:/usr/ucb:/etc
export PATH
umask 077
export SHELL=/usr/bin/ksh
export ENV=$HOME/.kshrc
export EDITOR=vi
export FCEDIT=vi
#Tomcat specific PATHs
export JAVA_HOME=/usr/jdk/instances/jdk1.5.0
export CATALINA_HOME=/opt/apache-tomcat-6.0.16
这还可能是添加附加 PATH 变量的好时机,以便涵盖安装了将要引用的工具的所有领域 。对于我的设置,我还需要创建以下两个路径:
bash-3.00# PATH=/usr/ccs/bin:$PATH; export PATH (for make cmd)
bash-3.00# PATH=/usr/sfw/bin:$PATH; export PATH
用户与组
如果将有多个用户使用您的服务器,您肯定希望设置用户和组权限,以允许不同的用户访问不同的工具和文件系统 。如果您将作为非 root 用户运行 Tomcat 安装(建议用于大多数生产环境),这也是必需的 。我将在一个后续的教程中详细讨论此话题,下面是一些要考虑的命令 。
要创建 Tomcat 组,可以使用清单 2 中的代码 。
清单 2. 创建用于运行 Tomcat 的唯一组
/usr/sbin/groupadd -g {specific gid. Leave this blank and the OS will assign you a gid}
{group name}
IE.
/usr/sbin/groupadd -g 10004 tomcatgroup
要创建 Tomcat 用户,可以使用清单 3 中的代码 。
清单 3. 创建用于运行 Tomcat 的唯一用户
/usr/sbin/useradd -d {user home directory} -g {user primary group} -u
{specific UID. You can leave this blank, and the operating system will assign you a UID.)
-s {default shell path for this user} -c "{Description of the user}" {username}
ie.
/usr/sbin/useradd -d /export/home/tomcat -g tomcatgroup -u 10010 -s /bin/ksh -c
"Main Tomcat Administrative User" tomcat
下载并提取服务器安装文件
了解用于提取服务器安装文件的各种方法 。
查找和移动安装文件
如果您是在使用 GUI,可以通过选择 Launch > Applications > Utilities > Terminal 来打开一个终端窗口 。如果您将该文件保存到桌面,并且您仍然是 root 用户,可以运行命令 cd /Desktop 。运行 ls -ltr 以确定您的 Tomcat tar.gz 文件是否在那里 。然后,将该文件移动到 /opt 目录下面(这是安装大多数新软件的地方) 。要移动安装文件,可以输入以下命令:
mv *tar.gz /opt
然后,输入 ls –ltr /opt 以确保该文件在那里 。
设置权限
权限是 UNIX 系统的生命线 。如果没有正确的权限,您将无法做任何事情;如果不将权限限制到某些事情,任何用户都可以做任何事情 。这就是您必须首先授予自己对安装文件的较高级别的权限的原因,这样您(或另一个用户)才能正确地执行它 。下一步,使用 umask 命令,如清单 4 所示,以确保您在提取安装代码时,能够将文件相应地写到所有的临时和安装目录 。
清单 4. 设置正确的权限和 umask
cd /opt
chmodx *gz (same as chmod 775)
umask 007 (makes any new files your user creates to be created with a 770 permission.
Think chmod in reverse)
提取安装文件
大多数代码包都以 .tar 文件的形式提供,并将其进一步压缩为 .gz 文件 。gunzip 命令只是将代码包从第一层压缩中展开 。
gunzip *.gz
提取 .tar 文件
最后,您必须对代码进行“untar(解压缩) 。这样做将确切地按压缩代码的方式提取代码——目录和所有的文件 。这就是务必在您需要安装代码的目录路径中解压缩文件的原因 。在 UNIX 中,最佳的目录路径是 /opt 。
tar -xvf *.tar
此命令提取应用程序文件 。可以输入 ls -latr 命令来查看所提取的文件 。如果由于某种原因,您的安装包附带有 .bat 或 .exe 文件,您可以通过输入以下命令来删除那些文件:
rm *.exe
rm *.bat
建立 Tomcat 目录以后,您可以继续配置、编译和启动该服务器 。
配置、编译和启动
我使用过的所有 Apache 产品都包括用于配置、编译和启动该产品的步骤 。此过程将让代码准备就绪,告诉软件如何安装和安装到何处,等等 。
配置软件
要配置 Tomcat 软件,可以输入以下命令:
cd $CATALINA_HOME/bin
./configure --with-java=/usr/java
或者:
export JAVA_HOME
./configure
编译代码
配置 Tomcat 软件以后,就该编译它了 。
构建二进制和库
清单 5 显示了用于构建 Tomcat 二进制和库的代码 。
清单 5. 构建二进制和库
# gunzip jsvc.tar.gz
# pwd
/opt/apache-tomcat-6.0.16/bin
# tar -xvf jsvc.tar
# gmake
确保 gmake 的路径在您的 PATH 中(例如,./sfw/bin/) 。
注意:Tomcat 站点规定,在 FreeBSD 系统上,您应该使用 GNU make (gmake)而不是本机 BSD make 命令 。
清单 6 中的代码将生成可执行文件 .jsvc 。该文件是成功地将 Tomcat 作为守护进程运行所必需的 。
清单 6. 设置 jsvc 权限并复制
chmod 775 jsvc
cp jsvc ..
cd ..
启动服务器
您可以从 CLI 或从某个 Java 程序中作为嵌入服务器启动该服务器 。此外,该服务器可以作为守护进程运行,这样它将自动运行,类似于 Windows 环境中的服务设置 。
运行基本启动脚本
清单 7 显示了 Tomcat 的基本启动脚本 。
清单 7. 运行基本启动脚本
cd $CATALINA_HOME/bin
./startup.sh
cd ../logs
检查 catalina.out 中的错误!如果您对此文件使用 cat、vi、more 或 less,可以输入 shift G 以转到文件底部 。或者,您可以输入类似如下的命令:
tail -50 catalina.out
以检查文件最后 50 行的错误 。
你还可以通过修改 Tomcat 代码或实现自己的 LifecycleListener 来自定义启动过程,不过这样做超出了本教程的范围 。
运行启动守护进程
您可以使用各种各样的选项来启动该守护进程,例如使用 -user 来表示非 root 用户,使用 -pid 来指定 .pid 文件位置,以及使用 -errfile 和 -outfile 来分别指定错误和输出文件日志 。有关完整的选项列表,可以找到您的 jsvc 进程,并输入 ./jsvc -help 。清单 8 显示了 jsvc 启动脚本的示例 。
清单 8. 示例 jsvc 启动脚本
Bash#./jsvc –home /usr/jdk/instances/jdk1.5.0
–Dcatalina.home=/opt/apache-tomcat-6.0.16
-cp ./bin/bootstrap.jar -outfile ./logs/catalina.out
-errfile ./logs/catalina.err
org.apache.catalina.startup.Bootstrap
使用 jsvc/bin 目录下面包括的 Tomcat.sh 脚本也是非常有用的 。但是,您将需要编辑变量,以确保诸如路径等内容与您的环境匹配 。
测试 Tomcat 安装
基本 Tomcat 安装将在端口 8080 上安装一个内部 HTTP 服务器——Coyote HTTP/1.1 。对于此体系结构和设置,您不需要单独的 Apache HTTP Server 。您可以将端口更改为更典型的 Web 服务器端口,例如 80,只需编辑 $CATALINA_HOME 目录树下的 server.xml 文件即可 。您还可以将缺省安全套接字层(Secure Sockets Layer,SSL)端口更改为典型的 SSL 端口,即端口 443 。server.xml 文件是 Tomcat 获取其大多数核心服务器配置信息的地方 。
您可以通过访问 http://localhost:8080/ 来验证是否已成功启动 Tomcat 。您应该看到与图 3 所示类似的启动页面 。
图 3. 初始 Tomcat 管理控制台欢迎页面
设置 Tomcat Web Application Manager
Tomcat Web Application Manager 提供了许多功能来帮助管理您的 Web 应用程序 。它允许您以多种方式部署和“取消部署Web 应用程序、列出应用程序、重新加载它们,甚至是停止和启动它们 。
授予特定用户访问权限
要实现 Tomcat Web Application Manager,您必须首先在 tomcat-users.xml 文件中向某个特定的用户授予访问权限 。为此,可以使用清单 9 中的代码 。
清单 9. 通过添加用户和角色来授予对 Tomcat Web Application Manager 的访问权限
vi tomcat-users.xml
Add these two lines below in between the two tags
只是以防您感到疑惑,上面的用户和密码完全是任意的 。您不需要在自己的 UNIX 服务器上创建具有该密码的该用户,并且可以随心所欲地设置用户和密码 。但是,您将使用该信息来登录到管理控制台中 。
为了加强安全性,应该仅限该 tomcat-users.xml 文件的所有者有权访问该文件 。为此,您必须将权限设置在 700 或以下——例如:
【在 UNIX 中安装和配置开发 Web 服务器】# chmod 600 tomcat-users.xml
重新启动 Tomcat 服务器
要使上述更改生效,您必须重新启动 Tomcat 服务器 。为此,可以使用清单 10 中的代码 。
清单 10. 重新启动 Tomcat 服务器
cd $CATALINA_HOME/bin
./shutdown.sh
./startup.sh ;tail -f ../logs/catalina.out
当您使用 tail 命令来查看 catalina.out 日志文件时,应该看到类似如下所示的内容:
May 15, 2008 4:08:12 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/74 config=null
May 15, 2008 4:08:12 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 6271 ms
打开 Tomcat Web Application Manager 控制台
返回到 Tomcat 管理控制台 。单击左侧导航窗格的 Administration 部分中的 Tomcat Manager 链接 。当成功时,您将看到类似图 4 所示的窗口 。
图 4. Tomcat Web Application Manager 启动页面
Tomcat 还具有一个状态应用程序,该应用程序显示 Tomcat 服务器的状态,包括 JVM 的内存利用情况和线程数量 。您可以通过单击 Tomcat Web Application Manger 右上角的 Server Status 来访问这个非常有用的工具 。
安装示例应用程序
Tomcat 附带了一个示例应用程序 。这当然不足以测试您的特定应用程序需要,但它将提供基本 JSP 应用程序和基本 Servlet 的功能测试 。
查找 WAR 的位置
当您停止 Tomcat Web Application Manager 以部署您的应用程序时,您需要知道要搜索哪个目录以选择用于部署的 Web 存档 (WAR) 。可以使用清单 11 中的代码来查找此文件 。
清单 11. 查找用于部署的 WAR 文件
bash-3.00# cd $CATALINA_HOME
bash-3.00# find . -name *.war
./webapps/docs/appdev/sample/sample.war
./webapps/sample.war
打开 Tomcat Web Application Manager 控制台以部署服务器
在 Manager Application 下面,向下滚动到 Deploy 部分,如图 5 所示 。
图 5. 示例应用程序部署
在 War file to deploy 下面,只需单击 Browse 。使用您在上面找到的路径来选择该示例应用程序 WAR 。单击 Open,然后单击 Deploy 。实际上,部署该示例应用程序也就这么简单 。
测试示例应用程序
在部署该应用程序之后,您可以通过访问 http://localhost:8080/sample/ 来确定它是否出现 。这里,您可以单击 JSP,然后单击 Servlet,从而验证这些 Servlet 将出现,并且基本的应用程序功能存在,如图 6 所示 。该服务器现在应该已经为您的应用程序准备就绪了 。
图 6. 示例应用程序测试和验证页面
您应该知道,这只是验证了 Tomcat 服务器已正确安装,并且在按预期正常工作 。要部署您的个人应用程序,您必须遵循有关在 Tomcat 服务器目录下的某些“上下文根下面进行打包和安装的 J2EE 指导原则 。
总结
结束语
到目前为止,您应该能够在新的 Tomcat 服务器上顺利部署和测试您的动态 J2EE 应用程序了!但愿,您已经了解了常见的 Web 体系结构、如何在 UNIX 操作系统上安装和配置 Tomcat 开发服务器,并学习到了一些优秀的 UNIX 管理技巧 。往后,各种可能性是无穷无尽的,还有大量的知识有待学习 。
祝您好运!
- 微信的账单怎么快速删除
- 少年歌行中无心喜欢谁
- 球球大作战星际商店在哪
- 爱莲说中莲花的品质 爱莲说中莲花的美好之处
- 怎么开启陌生电话拦截
- 手环亮度怎么调节
- 雪花酥的做法
- 中心城市有哪些
- 在腾讯文档中导出文档保存到本地的详细步骤
- 冻干粉怎么用在皮肤上
