Tomcat 服务器是一个免费的开放源代码的Web 应用服务器。Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP规范总是能在Tomcat 中得到体现。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。Tomcat 是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。
Tomcat服务器必须运行于java环境。所以应该首先安装java环境,我们安装jdk(Java Development Kit),jdk提供了java运行和编译的各种工具和运行库。
本教程的环境为虚拟机下的64位Ubuntu16.04,但是其他的Linux发行版本也是适用的。
配置jdk环境
查看当前系统是否已经安装了Java环境1
lengyue@ubuntu:~$ java -version
看到这样的界面就是说明当前系统并没有Java环境。
Java 有 2 个,一个是openjava,一个是oracle的java。我们用Oracle的。
我们可以点击此链接: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
进行下载。
由于我是64位Ubuntu的环境,所以我选择以下版本。需要根据自己的主机环境进行下载安装。
在/usr/lib/目录下创建一个jdk文件夹,并将下载好的jdk压缩包解压到/usr/lib/jdk/.1
2
3
4
5
6
7
8lengyue@ubuntu:~$ sudo mkdir /usr/lib/jdk
lengyue@ubuntu:~$ cd /tmp/mozilla_lengyue0
lengyue@ubuntu:/tmp/mozilla_lengyue0$ ls
jdk-8u161-linux-x64.tar.gz
lengyue@ubuntu:/tmp/mozilla_lengyue0$ sudo tar zxvf jdk-8u161-linux-x64.tar.gz -C /usr/lib/jdk/
lengyue@ubuntu:~$ cd /usr/lib/jdk/
lengyue@ubuntu:/usr/lib/jdk$ ls
jdk1.8.0_161
然后我们需要配置jdk环境变量1
lengyue@ubuntu:~$ sudo gedit etc/profile
我们需要向文件中添加如下代码1
2
3
4
5
6JAVA_HOME=/usr/lib/jdk/jdk1.8.0_161
JRE_HOME=$JAVA_HOME/jre
JAVA_BIN=$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME PATH CLASSPATH
注意:该段代码需要缩进相同,并且顶格写,而已写在最上面,不能添加到判断语句中,图中画红线标注的地方特别需要注意,应该和你的jdk的文件夹的路径保持一致。
保存后,我们开始运行重新编译一下,使之生效。1
2lengyue@ubuntu:~$ source /etc/profile
lengyue@ubuntu:~$ java -version
如图所示就是成功安装的样子。
安装并配置Tomcat
我们直接到官网下载tomcat的软件包。选择适合自己系统的版本即可。
地址: http://tomcat.apache.org/
本次我使用8.0.20的版本。
解压至/usr/local/目录下。1
lengyue@ubuntu:~$ sudo tar zxvf apache-tomcat-8.0.20.tar.gz -C /usr/local/
然后创建一个符号链接(这一步只是为了便捷使用,可以忽略不做的)1
lengyue@ubuntu:~$ sudo ln -s /usr/local/apache-tomcat-8.0.20 /usr/local/tomcat
然后编辑配置文件,使得tomcat可以成功运行在java环境下。1
lengyue@ubuntu:~$ sudo gedit /usr/local/tomcat/bin/startup.sh
向里面添加如下代码1
2
3
4
5
6
7#set java environment
export JAVA_HOME=/usr/lib/jdk/jdk1.8.0_161
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:%{JAVA_HOME}/lib:%{JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
#tomcat
export TOMCAT_HOME=/usr/local/apache-tomcat-8.0.20
代码的格式以及要求和刚才的添加jdk环境变量的一样。
图中的画红线的地方也是你软件包所在的目录路径,一定要和你的安装路径保持相同。
保存退出后,我们开始运行tomcat。1
lengyue@ubuntu:~$ sudo /usr/local/tomcat/bin/startup.sh
可以看到tomcat已经开始运行了。
然后我们在浏览器打开如下地址: http://127.0.0.1:8080/
tomcat默认运行于8080端口,可以通过更改配置文件修改运行端口。
看到如下画面就说明已经成功安装。
本文重点内容
为了各位更好的理解tomcat的安装以及运行机理,下面我要重点讲解一下本文中的2处添加代码的作用以及代码本身的意思。希望可以仔细阅读本处内容,因为这个真的很重要。
/etc/profile中的代码
在Linux中/etc/profile文件涉及的是环境变量。Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。我们通过修改/etc/profile文件,在这里修改的内容是对所有用户起作用的。也就是不论本机中的哪个用户登陆进入系统,我们设置的java环境他都是可以运行的。当然我们需要有权限修改此文件,只有系统管理员可以修改,普通用户只有读的权限,不具备进行修改与运行的权限。
常见的环境变量PATH:决定了shell将到哪些目录中寻找命令或程序,HOME:当前用户主目录,BIN:二进制文件。在添加的代码 中,每行开头的大写字母都表示环境变量,等号后的内容是文件路径,eg:JRE_HOME=$JAVA_HOME/jre
,在第一行中JAVA_HOME=/usr/lib/jdk/jdk1.8.0_161,所以JRE_HOME=/usr/lib/jdk/jdk1.8.0_161/jre。其实JRE_HOME的路径是/usr/lib/jdk/jdk1.8.0_161/jre。那为什么不直接写出完整的路径呢?因为我们在修改配置文件前,是不知道JAVA_HOME路径的,我们这么写,其实是个相对路径,我们只需要更改JAVA_HOME路径,一定可以得到JRE_HOME的路径。其他代码的和该例一样。最好一行的export用于设置或显示环境变量。
tomcat中的startup.sh代码
export后的全部是环境变量。在shell编程中,在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该次登陆操作。所以那段代码的作用就是使当前运行的脚本找到需要的运行环境。而且这个startup.sh是一个汇总的脚本,脚本中包含了很多需要调用的配置文件以及脚本,大部分都是各种变量,这些变量存在于tomcat的安装文件中,分布于各处,各司其职,每个都需要完成一定的作用。而startup.sh则是调用tomcat中所有的文件。
说这么多,你如果明白一个程序运行的机理以及各个文件夹的作用。理解这些是相当简单的。
扫码进群,我等待你的加入。
本文作者:冰羽
本文地址: https://bingyublog.com/2018/04/15/Ubuntu安装web服务器Tomcat/
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!