Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户不是不少的场合下被广泛使用,是开发和调试Java程序的首选。实际上,Tomcat部分是Apache服务器的扩展,但它是独立运行的,因此当你运行Tomcat时,它是做为一个独立的进程运行的。java
jdk(Java Development Kit)是Sun公司针对Java开发的产品。自从Java推出以来,JDK已经成为使用最普遍的Java SDK。JDK是整个Java的核心,它包括了Java运行环境、Java工具和Java基础的类库。因此要想运行Java程序必需要有JDK的支持,而安装Tomcat的前提也是安装好JDK。web
咱们先在windows下载JDK的软件安装包,而后传到Linux的/usr/local/src目录中并解压:数据库
而后更改下后缀:apache
#mv jdk1.8.0_191 /usr/local/jdk1.8vim
再设置环境变量:windows
#vim /etc/profile浏览器
把下面的内容写入/etc/profile的最下面:tomcat
JAVA_HOME=/usr/local/jdk1.8/ JAVA_BIN=/usr/local/jdk1.8/bin JRE_HOME=/usr/local/jdk1.8/jre PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar
而后执行source /etc/profile命令使其生效。服务器
检测设置是否正确:并发
#java -version
能够看到,这是rpm的JDK,咱们做以下处理:
#mv /usr/bin/java /usr/bin/java_bak
#source /etc/profile
再执行命令java -version
若是显示如下内容,则说明配置正确:
切换到/usr/local/src目录中,并使用wget命令下载Tomcat软件包
#cd /usr/local/src
#wget http://apache.fayea.com/tomcat/tomcat-8/v8.5.35/bin/apache-tomcat-8.5.35.tar.gz
#tar zxvf apache-tomcat-8.5.35.tar.gz
#mv apache-tomcat-8.5.35 /usr/local/tomcat
由于咱们下载的是二进制包,因此是免编译的,启动Tomcat的命令为:/usr/local/tomcat/bin/startup.sh
关闭Tomcat的命令为:/usr/local/tomcat/bin/shutdown.sh
若是想让Tomcat服务开机启动,须要把启动命令写入到/etc/rc.d/rc.local文件中并赋予x权限:
#echo "/usr/local/tomcat/bin/startup.sh" >> /etc/rc.d/rc.local
#chmod a+x /etc/rc.d/rc.local
再看下Tomcat监听的服务端口:
能够看到有三个端口:
8080为提供web服务的端口;
8005为管理端口;
8009为第三方服务调用的端口,好比httpd和Tomcat结合时会用到。
打开浏览器,输入192.168.6.120:8080能够看到Tomcat的默认页面:
Tomcat默认启动的端口是8080,若是想修改成80,则须要修改server.xml文件。
#vim /usr/local/tomcat/conf/server.xml
保存文件后重启Tomcat:
Tomcat的关闭和启动有点特殊,须要使用它自带的脚本实现。其实在生产环境中,Tomcat会使用8080端口,80端口是留给Nginx的。也就是说,要想访问Tomcat,须要使用Nginx代理。
咱们先关闭Nginx服务,再重启Tomcat服务,而后就能够看到Tomcat监听80端口了:
咱们打开Tomcat的配置文件,其中<Host>和</Host>之间的配置为虚拟主机配置部分,name定义域名,appBase定义应用的目录。Java的应用一般是一个jar的压缩包,将jar的压缩包放到appBase目录下面便可。刚刚咱们访问的Tomcat默认页其实就是在appBase目录下面,不过是在它子目录ROOT里。
咱们在后面再增长一段配置文件内容:
<Host name="www.123.cn" appBase="" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="" docBase="/data/wwwroot/123.cn/" debug="0" reloadable="true" crossContext="true"/> </Host>
其中,多了一个docBase,这个参数用来定义网站的文件存放路径,若是不定义,默认是在appBase/ROOT下面的。定义了docBase就以该目录为主了,其中appBase和docBase能够同样。在这一步操做过程当中,若是遇到访问404的问题,其实就是docBase没有定义对。
appBase为应用存放目录,一般是须要把war包直接放到该目录下面,它会自动解压成一个程序目录。下面咱们经过部署一个java的应用来体会appBase和docBase目录的做用:
下载zrlog软件包,把它移动到/usr/local/tomcat/webapps/目录下并更名为zrlog:
#wget http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war
#mv zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/
#mv /usr/local/tomcat/webapps/zrlog-1.7.1-baaecb9-release /usr/local/tomcat/webapps/zrlog
而后在windows浏览器上输入网址http://192.168.6.120/zrlog/,出现Zrlog安装向导:
而后在Linux中登入数据库,建立一个zrlog库和一个zrlog用户:
create database zrlog;
grant all on zrlog.* to 'zrlog'@127.0.0.1 identified by '123456';
而后在浏览器中输入以下信息:
点击查看,就能够看到主页面了:
Tomcat的日志目录为/usr/local/tomcat/logs,主要有四大类日志:
其中catalina开头的日志为Tomcat的综合日志,它记录Tomcat服务相关信息,也会记录错误日志。catalina.2018-12-25.log和catalina.out内容相同,前者会天天生成一个新的日志。host-manager和manager为管理相关的日志,其中host-manager为虚拟主机的管理日志。Localhost和localhost_access为虚拟主机相关日志,其中带access字样的日志为访问日志,不带access字样的为默认虚拟主机的错误日志。访问日志默认不会生成,须要在server.xml中配置一下。具体的方法是在对应虚拟主机的<Host></Host>里面加入下面的配置:
prefix定义访问日志的前缀,suffix定义日志的后缀,pattern定义日志格式。新增长的虚拟主机默认并不会生成相似默认虚拟主机的那个“localhost.日期.log”日志,错误日志会统一记录到catalina.out中。关于Tomcat日志,最须要关注catalina.out,出现问题时应该首先想到去查看它。