本文将详细讲解在 CentOS 7.4 系统上如何安装tomcat 9,tomcat是没有32位和64位之分的。

创建tomcat的安装路径

首先在/usr/local/下建立一个tomcat的文件夹

[root@VM_0_9_centos ~]# cd /usr/local
[root@VM_0_9_centos local]# mkdir tomcat9
[root@VM_0_9_centos local]# cd tomcat9/
[root@VM_0_9_centos tomcat9]# ls
apache-tomcat-9.0.7.tar.gz
[root@VM_0_9_centos tomcat9]#

然后解压缩

[root@VM_0_9_centos tomcat9]# tar -zxvf apache-tomcat-9.0.7.tar.gz

如何查看端口号

在Linux使用过程中,需要了解当前系统开放了哪些端口,并且要查看开放这些端口的具体进程和用户,可以通过netstat命令进行简单查询。

netstat命令各个参数说明如下:
  -t : 指明显示TCP端口
  -u : 指明显示UDP端口
  -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)
  -p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。
  -n : 不进行DNS轮询,显示IP(可以加速操作)
即可显示当前服务器上所有端口及进程服务,于grep结合可查看某个具体端口及服务情况。
  netstat -ntlp //查看当前所有tcp端口∙
  netstat -ntulp | grep 80 //查看所有80端口使用情况∙
  netstat -an | grep 3306 //查看所有3306端口使用情况∙

修改tomcat的端口号

一般我会把原来的tomcat的8080端口改掉,进入tomcat的conf目录下,编辑server.xml文件.

端口我改成了8888,并添加了一个URIEncoding="UTF-8",修改了server.xml必须重启tomcat.

进入到conf修改server.xml来修改tomcat的端口号.

[root@VM_0_9_centos conf]# vim server.xml

设置Linux的防火墙

之前我已讲过,因为Linux的防火墙默认只对外开放了一个22的端口,其他的端口都没打开。所以你需要把它的防火墙设

置一下,让它对tomcat的8888端口号放行。

使用 cd ~ 命令切换到当前用户主目录(即root),然后使用如下命令来设置Linux的防火墙,使其对tomcat的8080端口号放

行。

**Centos7.4开启端口方法 **

例如:开放80端口方法如下:

  • 添加
# firewall-cmd --zone=public --add-port=80/tcp --permanent  (--permanent永久生效,没有此参数重启后失效)
  • 重新载入
# firewall-cmd --reload
  • 查看
# firewall-cmd --zone=public --query-port=80/tcp
  • 删除
# firewall-cmd --zone=public --remove-port=80/tcp --permanent
[root@VM_0_9_centos conf]# cd /
[root@VM_0_9_centos /]# firewall-cmd --zone=public --add-port=8888/tcp --permanent
success
[root@VM_0_9_centos /]# firewall-cmd --reload
success
[root@VM_0_9_centos /]# firewall-cmd --zone=public --list-ports
8088/tcp 8080/tcp 80/tcp 8888/tcp
[root@VM_0_9_centos /]# firewall-cmd --zone=public --query-port=80/tcp
yes

启动tomcat

[root@VM_0_9_centos /]# cd /usr/local/tomcat9/apache-tomcat-9.0.7/bin/
[root@VM_0_9_centos bin]# ./startup.sh
Using CATALINA_BASE: /usr/local/tomcat9/apache-tomcat-9.0.7
Using CATALINA_HOME: /usr/local/tomcat9/apache-tomcat-9.0.7
Using CATALINA_TMPDIR: /usr/local/tomcat9/apache-tomcat-9.0.7/temp
Using JRE_HOME: /usr/java/jdk-10.0.2/
Using CLASSPATH: /usr/local/tomcat9/apache-tomcat-9.0.7/bin/bootstrap.jar:/usr/local/tomcat9/
apache-tomcat-9.0.7/bin/tomcat-juli.jar
Tomcat started.

测试tomcat

CentOS 7 使用、打开、关闭、防火墙与端口

systemctl是CentOS7的服务管理工具中主要的工具,它融合之前servicechkconfig的功能于一体。

  • 启动一个服务:systemctl start firewalld.service
  • 关闭一个服务:systemctl stop firewalld.service
  • 重启一个服务:systemctl restart firewalld.service
  • 显示一个服务的状态:systemctl status firewalld.service
  • 在开机时启用一个服务:systemctl enable firewalld.service
  • 在开机时禁用一个服务:systemctl disable firewalld.service
  • 查看服务是否开机启动:systemctl is-enabled firewalld.service
  • 查看已启动的服务列表:systemctl list-unit-files|grep enabled
  • 查看启动失败的服务列表:systemctl --failed

配置firewalld-cmd

  • 查看版本: firewall-cmd --version
  • 查看帮助: firewall-cmd --help
  • 显示状态: firewall-cmd --state
  • 查看所有打开的端口: firewall-cmd --zone=public --list-ports
  • 更新防火墙规则: firewall-cmd --reload
  • 查看区域信息: firewall-cmd --get-active-zones
  • 查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
  • 拒绝所有包:firewall-cmd --panic-on
  • 取消拒绝状态: firewall-cmd --panic-off
  • 查看是否拒绝: firewall-cmd --query-panic

那怎么开启一个端口呢

  • 添加

    firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
  • 重新载入

    firewall-cmd --reload
  • 查看

    firewall-cmd --zone=public --query-port=80/tcp
  • 删除

    firewall-cmd --zone=public --remove-port=80/tcp --permanent

在 CentOS 7 中设置 Tomcat 开机自启动

假设Tomcat的安装路径为/usr/local/tomcat9/apache-tomcat-9.0.7

1、为 tomcat 添加启动参数

catalina.sh在执行的时候会调用同级路径下的setenv.sh来设置额外的环境变量,因此在/usr/local/tomcat9/apache-tomcat-9.0.7/bin路径下创建setenv.sh文件,内容如下:

# 在tomcat目录下面的bin目录下面创建setenv.sh文件,
# 因为catalina.sh在执行的时候会调用同级路径下的setenv.sh来设置额外的环境变量。
export CATALINA_HOME=/usr/local/tomcat9/apache-tomcat-9.0.7
export CATALINA_BASE=/usr/local/tomcat9/apache-tomcat-9.0.7
#add tomcat pid
CATALINA_PID="$CATALINA_BASE/temp/tomcat.pid"
#add java opts
JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"

2、编写 tomcat.service 文件

/usr/lib/systemd/system路径下添加tomcat.service文件,内容如下:

# 在/usr/lib/systemd/system路径下添加tomcat.service文件,内容如下:
[Unit]
Description=Tomcat
After=syslog.target network.target remote-fs.target nss-lookup.target [Service]
Type=forking
Environment="JAVA_HOME=/usr/java/jdk-10.0.2/"
PIDFile=/usr/local/tomcat9/apache-tomcat-9.0.7/temp/tomcat.pid
ExecStart=/usr/local/tomcat9/apache-tomcat-9.0.7/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true [Install]
WantedBy=multi-user.target

3、将 tomcat 加入服务管理

  • 设置权限
chmod 754 tomcat.service
  • 启动关闭服务,设置开机启动
# 开机启动
systemctl enable tomcat.service
# 禁止开机启动
systemctl disable tomcat.service
# 启动服务
systemctl start tomcat.service
# 关闭服务
systemctl stop tomcat.service
# 重新启动
systemctl restart tomcat.service

参考资料:

CentOS 7.4 上如何安装 tomcat 9的更多相关文章

  1. CentOS 6.4 系统上如何安装 tomcat 8

    CentOS 6.4 系统上如何安装 tomcat 8 本文将详细讲解在Linux系统上如何安装tomcat,tomcat是没有32位和64位之分的. 1.下载tomcat 首先我们肯定要先下载tom ...

  2. Mac 上 brew 安装Tomcat

    首先保证brew命令能够正常使用: 搜索tomcat是否存在:brew search tomcat 安装tomcat:brew install tomcat 检查是否安装成功:catalina -h ...

  3. 使用 SSH上传安装tomcat

    开发步骤: 1.在soft文件夹下上传tomcat 2.[root@localhost soft]# tar  -zxvf apache-tomcat-7.0.61.tar.gz    //解压安装 ...

  4. 图解 SSH上传安装tomcat

    安装步骤: 1.SSH上传压缩包 2.[root@localhost soft]# tar  -zxvf apache-tomcat-7.0.61.tar.gz    //解压安装 解压结果 3.[r ...

  5. (转)CentOS 7.6 上编译安装httpd 2.4.38

    原文:https://www.s4lm0x.com/archives/40.html https://www.cnblogs.com/sunshine-H/p/8110608.html----超详细 ...

  6. CentOS 6.5上MySQL安装部署与入门。

    centos 6.5 yum 安装mysql1. 安装软件:yum install -y mysql-server mysql mysql-devel2.启动服务:service mysqld sta ...

  7. CentOS 6.9上inotify-tools 安装及使用方法

    文章目录 [隐藏] 一.检查系统内核版本 三.下载安装(下载有点慢) 四.查看inotify默认参数 五.修改inotify参数 六.创建实时监控脚本 (file 里面放的需要监听的目录) 七:实例操 ...

  8. 【good】在CentOS 6.x上安装GlusterFS

    转发:http://quenywell.com/install-glusterfs-on-centos-6-x/ 本文主要介绍如何在CentOS 6.x上快速安装GlusterFS.GlusterFS ...

  9. [moka同学摘录]在Centos 6.5下成功安装和配置了vim7.4

    来源:https://my.oschina.net/gzyh/blog/266097 资源下载地址: 链接:http://pan.baidu.com/s/1kVuaV5P 密码:xkq9   摘要: ...

随机推荐

  1. Python爬虫学习笔记之极限滑动验证码的识别

    代码: import time from io import BytesIO from PIL import Image from selenium import webdriver from sel ...

  2. 理解JavaScript的prototype和__proto__

    首先,要明确几个点: 1.在JS里,万物皆对象. 方法(Function)是对象,方法的原型(Function.prototype)是对象.因此,它们都会具有对象共有的特点.即:对象具有属性__pro ...

  3. js:鼠标移动到文字显示div,移出文字div显示,鼠标能移进div

    <!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" ...

  4. Java注释@interface的用法【转】 --好文章 很好理解

    java用  @interface Annotation{ } 定义一个注解 @Annotation,一个注解是一个类. @Override,@Deprecated,@SuppressWarnings ...

  5. 初识Webx 1

    Webx是一套基于Java Servlet API的通用Web框架.它在Alibaba集团内部被广泛使用.从2010年底,向社会开放源码. Webx框架是一个稳定.强大的Web框架.建立在Spring ...

  6. HDU 1231 最大连续子序列 (dp)

    题目链接 Problem Description 给定K个整数的序列{ N1, N2, ..., NK },其任意连续子序列可表示为{ Ni, Ni+1, ...,  Nj },其中 1 <= ...

  7. react组件之间的几种通信情况

    组件之间的几种通信情况 父组件向子组件通信 子组件向父组件通信 跨级组件通信 没有嵌套关系组件之间的通信 1,父组件向子组件传递 React数据流动是单向的,父组件向子组件通信也是最常见的;父组件通过 ...

  8. Ribbon自带负载均衡策略比较

    Ribbon自带负载均衡策略比较 策略名 策略声明 策略描述 实现说明 BestAvailableRule public class BestAvailableRule extends ClientC ...

  9. ES6新增的let与const

    1.const 声明常量,一旦声明必须立马赋值,否则报错 const PI = 3.14 const PI; //报错:Uncaught SyntaxError: Missing initialize ...

  10. 【JDK】JDK7与JDK8环境共存与切换:先安装jdk7,配置好环境变量后再安装jdk8

    1.先安装JDK7 下载jdk-7u79-windows-i586.exe,安装后配置好环境变量JAVA_HOME,CLASSPATH,PATH java -version javac 指令都正常 2 ...