关闭防火墙并设置开机不自启,配置SElinux规则
[root@jing ~]# systemctl stop firewalld.service
[root@jing ~]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@jing ~]#
[root@jing ~]# setenforce 0
修改主机名
[root@jing ~]# hostnamectl set-hostname tomcat
[root@jing ~]# bash
[root@tomcat ~]#
安装JDK
官网下载地址: http://www.oracle.com/echnetwork/java/javase/downloads/jdk8-downloads-2133151.html
查看目录,移动 jdk到 /usr/local/src/ 目录下
[root@tomcat ~]# ls
anaconda-ks.cfg mysql-5.6.43-linux-glibc2.12-x86_64.tar.gz
apache-tomcat-8.5.60.tar.gz zrlog-1.7.1-baaecb9-release.war
jdk-8u271-linux-x64.tar.gz
[root@tomcat ~]# mv jdk-8u271-linux-x64.tar.gz /usr/local/src/
进入/usr/local/src/目录下
[root@tomcat ~]# cd /usr/local/src/
[root@tomcat src]# ls
jdk-8u271-linux-x64.tar.gz
[root@tomcat src]# tar -zvxf jdk-8u271-linux-x64.tar.gz
查看解压包的大小
[root@tomcat src]# du -sh jdk1.8.0_271/
342M jdk1.8.0_271/
将解压后的文件移动到/usr/local/目录下,改名为jdk1.8
[root@tomcat src]# mv jdk1.8.0_271/ /usr/local/jdk1.8
[root@tomcat src]# ls /usr/local/
bin etc games include jdk1.8 lib lib64 libexec sbin share src
修改环境变量
[root@tomcat src]# vi /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@tomcat src]# source /etc/profile
检查JDK安装情况
1、如果显示结果带有java version "1.8.0_211"字样和我们解压的jdk-8u211-linux-x64.tar.gz包的版本相对应,则证明安装成功
[root@tomcat src]# java -version
java version "1.8.0_271"
Java(TM) SE Runtime Environment (build 1.8.0_271-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)
[root@tomcat src]# rpm -qa |grep openjdk
[root@tomcat src]# yum list |grep openjdk
2、如果与解压的包名不符,就是下列情况
[root@tomcat src]# java -version
openjdk version "1.8.0_242"
OpenJDK Runtime Environment (build 1.8.0_242-b08)
OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)
发现不是自己安装的JDK,这是因为系统自带OpenJDK或者以前安装过OpenJDK。使用witch命令,查看现在Java的所在目录:
[root@tomcat src]# which java
/usr/bin/java
如果结果为/usr/bin/java则说明这是系统自带的OpenJDK。这时,我们为了实验的一致性,把原来的Java目录重命名为java_bak,并使用source命令再次使环境变量生效,然后使用java -verison命令查看是否有java version "1.8.0_211"字样,命令如下:
[root@tomcat src]# mv /usr/bin/java /usr/bin/java_bak
[root@tomcat src]# source /etc/profile
[root@tomcat src]# java -version
java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)
[root@tomcat src]#
安装Tomcat
官网下载地址:http://tomcat.apache.org/
[root@tomcat ~]# mv apache-tomcat-8.5.60.tar.gz /usr/local/src/
[root@tomcat ~]# cd /usr/local/src/
[root@tomcat src]# ls
apache-tomcat-8.5.60.tar.gz jdk-8u271-linux-x64.tar.gz
解压,移动到/usr/local目录下
[root@tomcat src]# tar zxvf apache-tomcat-8.5.60.tar.gz
[root@tomcat src]# mv apache-tomcat-8.5.60 /usr/local/tomcat
[root@tomcat src]# cd /usr/local/tomcat/
启动Tomcat
[root@tomcat tomcat]# /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
Using CATALINA_OPTS:
Tomcat started.
测试
查看是否有以下端口存在(8009、8080、8005),如果存在则证明Tomcat服务启动成功
[root@tomcat tomcat]# ps -aux |grep java
[root@tomcat tomcat]# netstat -lntp |grep java
tcp6 0 0 :::8080 :::* LISTEN 3332/java
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 3332/java
8080为提供Web服务的端口;
8005为管理端口;
8009端口为第三方服务调用的端口
可以不执行以下命令
[root@tomcat tomcat]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 976/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1196/master
tcp6 0 0 :::8080 :::* LISTEN 3332/java
tcp6 0 0 :::22 :::* LISTEN 976/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1196/master
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 3332/java
[root@tomcat tomcat]# systemctl stop firewalld
[root@tomcat tomcat]# iptables -nvL
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
配置Tomcat监听80端口
修改配置文件
[root@tomcat ~]# vi /usr/local/tomcat/conf/server.xml
//直接搜索8080找到如下内容
......
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
//将这里的8080直接改成80
想重启服务必须先关闭服务
[root@tomcat ~]# /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
Using CATALINA_OPTS:
启动服务
[root@tomcat ~]# /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
Using CATALINA_OPTS:
Tomcat started.
测试
用netstat命令监听Java相关服务端口来查看是否启动成功
[root@tomcat ~]# netstat -lntp |grep java
tcp6 0 0 :::80 :::* LISTEN 3959/java
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 3959/java [root@tomcat ~]# netstat -lntp |grep 80
tcp6 0 0 :::80 :::* LISTEN 3959/java
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 3959/java
浏览器访问
再次访问IP:8080,无法访问
编辑Tomcat配置文件
[root@tomcat ~]# vi conf/server.xml
直接在配置文件内搜索Host
......
ame="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
添加以下内容
<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>
其中和之间的配置为虚拟主机配置部分:
name定义域名;
appBase定义应用的目录;
unpackWARs为是否自动解压war包;
autoDeploy 如果此项设置为true,表示Tomcat服务处于运行状态,能够检测appbase下的文件,如果有新的Web应用加入进来,会自动发布这个Web应用。
appBase部署Java应用
进入/usr/local/src/目录
[root@tomcat ~]# mv zrlog-1.7.1-baaecb9-release.war /usr/local/src/
[root@tomcat ~]# ls
anaconda-ks.cfg mysql-5.6.43-linux-glibc2.12-x86_64.tar.gz
[root@tomcat ~]# cd /usr/local/src/
[root@tomcat src]# ls |grep zrlog
zrlog-1.7.1-baaecb9-release.war
[root@tomcat src]#
appBase支持自动解压,所以直接将war包拷贝到/usr/local/tomcat/webapps/目录下
[root@tomcat src]# cp zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/
[root@tomcat 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
将war包拷贝到/usr/local/tomcat/webapps/目录下之后,包会自动解压。(前提是tomcat正常启动
或:
[root@tomcat src]# ls !$
重命名war包的文件名
进入目录
[root@tomcat src]# cd /usr/local/tomcat/webapps/
重命名war包的文件名
[root@tomcat webapps]# mv zrlog-1.7.1-baaecb9-release zrlog
[root@tomcat webapps]# ls
docs host-manager ROOT zrlog-1.7.1-baaecb9-release
examples manager zrlog zrlog-1.7.1-baaecb9-release.war
用浏览器访问
192. 168.200.40/zrlog(注意你的IP)
安装mysql
[root@tomcat webapps]# yum install mariadb mariadb-server -y
[root@tomcat webapps]# systemctl start mariadb
[root@tomcat webapps]# systemctl enable mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
初始化
[root@tomcat webapps]# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none): 回车
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] n
... skipping.
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
[root@tomcat webapps]# mysql -uroot -p000000
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 5.5.68-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
创建zrlog数据库
MariaDB [(none)]> create database zrlog;
Query OK, 1 row affected (0.00 sec)
创建zrlog用户
MariaDB [(none)]> grant all on zrlog.* to 'zrlog'@127.0.0.1 identified by '000000';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> exit
Bye
退出数据库
使用zrlog用户登录,检查创建用户是否可以登陆数据库
[root@tomcat webapps]# mysql -u zrlog -h 127.0.0.1 -p000000
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 5.5.68-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
检查已有数据库
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| zrlog |
+--------------------+
2 rows in set (0.00 sec)
MariaDB [(none)]> exit
Bye
在浏览器中打开
设置管理员账号(admin)和管理员密码(123456),网站标题和子标题按需填写,本次自定义内容(网站标题:“测试”,网站子标题:“linux”)
可以进入搭建好的zrlog页面
单击上图主菜单栏中的“管理”按钮,账户名和密码(admin:123456)
单击“文章撰写”栏目,写上自己想写的内容,然后保存。
返回主页面,你就可以看到刚才你写的内容
ocBase部署Java应用
查看虚拟主机docBase的路径
[root@tomcat ~]# vi /usr/local/tomcat/conf/server.xml
......
<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 定义的目录为:/data/wwwroot/123.cn
创建docBase目录
[root@tomcat ~]# cd /usr/local/tomcat/webapps/
创建docBase目录
[root@tomcat webapps]# mkdir -p /data/wwwroot/123.cn/
将所有文件移动到/data/wwwroot/123.cn/目录下
[root@tomcat webapps]# mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/
在Windows下绑定hosts文件
hosts文件路径:C:\Windows\System32\drivers\etc
在文件下面添加
192.168.200.40 www.123.cn
可以把hosts文件拖到桌面,修改完再拖回来·。
测试
打开命令提示符(CMD),用ping命令ping www.123.cn 看IP是否为虚拟机IP,如果是的话,现在就可以访问了。
用域名去访问zrlog页面,由于之前配置完虚拟主机后,并没有重启服务,这里要重启一下服务
[root@tomcat webapps]# /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
Using CATALINA_OPTS:
[root@tomcat webapps]# /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
Using CATALINA_OPTS:
Tomcat started.
打开浏览器在地址栏输入www.123.cn,就可以看到zrlog的首页
Tomcat日志
查看日志
[root@tomcat ~]# ls /usr/local/tomcat/logs/
catalina.2021-04-06.log host-manager.2021-04-06.log localhost_access_log.2021-04-06.txt zrlog
catalina.out localhost.2021-04-06.log manager.2021-04-06.log
1、 catalina开头的日志为Tomcat的综合日志,它记录Tomcat服务相关信息,也会记录错误日志。
2、catalina.2020-xx-xx.log和catalina.out内容相同,前者会每天生成一个新的日志。
3、host-manager和manager为管理相关的日志,其中host-manager为虚拟主机的管理日志。
4、 localhost和localhost-access为虚拟主机相关日志,其中带access字样的日志为访问日志,不带access字样的为默认虚拟主机的错误日志。
- 配置生成日志
由于日志默认不会生成,需要在server.xml中配置一下。所以接下来配置新增虚拟主机的访问日志,具体方法是在对应虚拟主机的里面加入下面的配置(我们用www.123.cn来进行配置),编辑以下配置文件server.xml
[root@tomcat logs]# vi /usr/local/tomcat/conf/server.xml
<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"/>
添加以下内容
<Valve className="org.apache.catalina.valves.AccessLogValve."
directory="logs"
prefix="123.cn_access_log" suffix=".txt"
pattern="%h %l %u %t "%r"%s %b"/>
</Host>
</Engine>
重启Tomcat服务
[root@tomcat ~]# /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
Using CATALINA_OPTS:
[root@tomcat ~]# /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
Using CATALINA_OPTS:
Tomcat started.
重启Tomcat服务完成后,访问网站,查看/usr/local/tomcat/logs目录下是否有日志生成,并且查看生成的日志信息
[root@tomcat ~]# ls /usr/local/tomcat/logs/
catalina.2021-04-06.log host-manager.2021-04-06.log localhost_access_log.2021-04-06.txt zrlog
catalina.out localhost.2021-04-06.log manager.2021-04-06.log
[root@tomcat ~]# cat /usr/local/tomcat/logs/localhost.2021-04-06.log
192.168.174.1 - - [29/Mar/2020:22:06:16 -0700] "GET / HTTP/1.1" 200 8645
192.168.174.1 - - [29/Mar/2020:22:06:16 -0700] "GET //favicon.ico HTTP/1.1" 200 9662
Tomcat搭建配置完成