一、Tomcat简介
Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
Tomcat是一个轻量级应用服务器。
java程序写的网站用tomcat+jdk来运行。
tomcat是一个中间件,真正起作用的,解析java脚本的是jdk。
jdk(java development kit)是整个java的核心,它包含了java运行环境和一堆java相关的工具以及java基础库。
最主流的jdk为sun公司发布的jdk,除此之外,其实IBM公司也有发布JDK,CentOS上也可以用yum安装openjdk。
二、安装JDK
安装Tomcat的前提是安装好JDK。
官方下载地址:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
选择与系统相对应的版本:
下载完成之后可以使用lrzsz
工具或者xftp
工具传送至CentOS
的/usr/local/src
目录下。
[root@zlinux src]# cd
[root@zlinux ~]# cd /usr/local/src
[root@zlinux src]# rz //选择JDK压缩包
[root@zlinux src]# ls
jdk-8u161-linux-x64.tar.gz nginx-1.12.2 php-5.6.30
mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz nginx-1.12.2.tar.gz php-5.6.30.tar.bz2
[root@zlinux src]# tar zxf jdk-8u161-linux-x64.tar.gz
[root@zlinux src]# mv jdk1.8.0_161 /usr/local/jdk1.8
[root@zlinux src]# vim /etc/profile //设置环境变量,在末尾添加以下内容。
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
[root@zlinux src]# source /etc/profile
[root@zlinux src]# java -version //检查设置是否正确,显示以下内容则说明配置正确
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
三、安装Tomcat
[root@zlinux src]# wget http://mirrors.shu.edu.cn/apache/tomcat/tomcat-8/v8.5.29/bin/apache-tomcat-8.5.29.tar.gz //如果觉得版本不合适可去官网自行下载
[root@zlinux src]# /usr/local/tomcat/bin/startup.sh //启动tomcat,因为是二进制包,免去编译过程
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/jdk1.8
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@zlinux src]# ps aux |grep tomcat //查看是否有tomcat相关进程
root 2441 12.9 4.0 2480652 75984 pts/0 Sl 18:47 0:02 /usr/local/jdk1.8/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
root 2458 0.0 0.0 112680 972 pts/0 R+ 18:48 0:00 grep --color=auto tomcat
[root@zlinux src]# netstat -lntp | grep java
tcp6 0 0 :::8080 :::* LISTEN 2441/java
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 2441/java
tcp6 0 0 :::8009 :::* LISTEN 2441/java
#端口8080:提供web服务的
#端口8005:管理端口
#端口8009:第三方服务调用端口(如:httpd和Tomcat结合时会用到)
四、配置Tomcat服务的访问端口
[root@zlinux ~]# vim /usr/local/tomcat/conf/server.xml //找到下面内容,port改为80
[root@zlinux ~]# /usr/local/tomcat/bin/shutdown.sh //重启tomcat,需要先关闭在启动,没有单独重新启动的脚本
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/jdk1.8
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@zlinux ~]# /usr/local/tomcat/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/jdk1.8
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
配置好之后,再次访问就不需要加端口号了:
这里测试完还是改为8080端口
如果80端口被占用,可以停止占用80端口的服务(前提是没有服务在80上面跑),否则不可随意切换端口。如果是Nginx占用80端口,可以使用Nginx代理功能。
下图为nginx代理8080端口:
五、Tomcat的虚拟主机
Tomcat也有虚拟主机这一概念,下面部署一个简单博客来了解虚拟主机的配置。
1、修改配置文件
[root@zlinux ~]# vim /usr/local/tomcat/conf/server.xml //添加以下内容
#unpackWARs自动解压war包
2、下载zrlog并配置
[root@zlinux ~]# cd /usr/local/src/
[root@zlinux src]# wget http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war
[root@zlinux src]# cp zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/
[root@zlinux src]# ls /usr/local/tomcat/webapps/ //已经自动解压
docs host-manager ROOT zrlog-1.7.1-baaecb9-release.war
examples manager zrlog-1.7.1-baaecb9-release
[root@zlinux webapps]# mv zrlog-1.7.1-baaecb9-release zrlog //修改名字
[root@zlinux webapps]# ls
docs examples host-manager manager ROOT zrlog zrlog-1.7.1-baaecb9-release.war
3、使用浏览器访问
4、配置数据库
在上一步骤当中,zrlog需要连接数据库,那么我们需要创建zrlog使用的数据库。
[root@zlinux ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.36 MySQL Community Server (GPL)
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create database zrlog; //创建zrlog数据库
Query OK, 1 row affected (0.01 sec)
mysql> grant all on zrlog.* to 'zrlog'@'127.0.0.1' identified by '123456'; //创建zrlog用户
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye
[root@zlinux ~]# mysql -uzrlog -p123456 -h127.0.0.1 //验证是否创建成功
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.6.36 MySQL Community Server (GPL)
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
在页面填入数据库相关信息:
然后下一步,填写信息:
然后重新输入网址查看:
至此博客搭建完成。
5 、配置直接访问网址查看博客
[root@zlinux vhost]# mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/tctest/ //博客下的文件全部移至网站存放路径
[root@zlinux vhost]# /usr/local/tomcat/bin/shutdown.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/jdk1.8
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@zlinux vhost]# /usr/local/tomcat/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/jdk1.8
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
因为在之前配置了nginx代理,所以直接输入网址直接跳到博客:
六、Tomcat日志
[root@zlinux vhost]# ls /usr/local/tomcat/logs/
catalina.2018-03-30.log host-manager.2018-03-30.log localhost_access_log.2018-03-30.txt
catalina.out localhost.2018-03-30.log manager.2018-03-30.log
其中catalina开头的日志为Tomcat的综合日志,它记录Tomcat服务相关信息,也会记录错误日志。
其中catalina.2017-xx-xx.log和catalina.out内容相同,前者会每天生成一个新的日志。
host-manager和manager为管理相关的日志,其中host-manager为虚拟主机的管理日志。
localhost和localhost_access为虚拟主机相关日志,其中带access字样的日志为访问日志,不带access字样的为默认虚拟主机的错误日志。
访问日志默认不会生成,需要在server.xml中配置一下。