1. Tomcat介绍

  • JVM简介

    JAVA应用都是运行在java虚拟机上的,java虚拟机简称为JVM(iava Virtual Machine)。

    所谓虚拟机是指:通过软件模拟具有完整硬件系统的功能运行在一个完全隔离环境中的计算机系统。

  • JVM虚拟机的作用

    C语言不支持跨平台,因为C语言要想在windows、linux、Mac上运行,需要进行分别编译。那么在linux上有非常多的优秀软件如果需要在Windows上使用则需要重新进行编译。移植性很差。

    而JAVA则不同,JAVA是可以跨平台的,只需要将源代码进行一次编译,能够在多处运行。

    那JAVA是怎么做到?它只需要在Windows、Linux系统上运行一个jvm,这样我们能将java编译好的war包在Windows和Linux平台运行起来,无需我们重复编译。

  • JRE和JDK

    jre是java的运行环境,会包含jvm。

    jdk是java的开发环境,会包含java的运行环境jre。

    单纯的运行java代码只需要jre足够,但如果需要提供开发环境以及运行环境则需要 jdk。

  • Tomcat介绍

    Tomcat与nginx,apache类似,也是一个Web服务器软件。只不过Tomcat是基于JAVA开发的WEB服务,主要用于解析Java代码,类似于php-fpm用于解析php代码。

    Nginx仅支持静态资源解析,而Tomcat支持解析java开发的web应用,还支持解析静态资源(效率不高)。

    Nginx适合做前端负载均衡,而Tomcat适合做后端应用服务处理。

    通常情况下,企业会使用Nginx+tomcat结合,由Nginx处理静态资源,Tomcat处理动态资源。

2. Tomcat安装

安装tomcat软件之前需要安装java环境JDK。

2.1 JDK安装

JDK安装有两种方式,yum安装和二进制安装。

  • yum安装方式:

    #直接通过Centos的base源进行安装,默认安装的版本时1.8:
    [root@xuzhichao ~]# yum install java -y [root@xuzhichao ~]# rpm -q java-1.8.0-openjdk
    java-1.8.0-openjdk-1.8.0.242.b08-1.el7.x86_64
  • 二进制方式安装

    JDK官方下载地址为https://www.oracle.com/java/technologies/javase-downloads.html

    [root@es-node1	~]#	mkdir /soft/
    [root@es-node1 ~]# tar xf jdk-8u60-linux-x64.tar.gz -C /app/
    [root@es-node1 ~]# ln -s /soft/jdk1.8.0_60 /soft/jdk #设置环境变量
    [root@es-node1 ~]# cat >> /etc/profile <<'EOF'
    export JAVA_HOME=/soft/jdk
    export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
    export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
    EOF

2.2 Tomcat安装

tomcat也有两种安装方式,yum安装和二进制安装,一般使用二进制方式安装,因为二级制方式可以使用较新的tomcat版本,而且不需要进行编译,安装也较为简单。

  1. tomcat的安装包下载:

    下载地址为:https://tomcat.apache.org/download-10.cgi

  2. 解压并创建软连接:

    [root@tomcat01 ~]# tar -xf apache-tomcat-10.0.7.tar.gz -C /apps/
    
    [root@tomcat01 ~]# cd /apps/
    [root@tomcat01 apps]# ln -sv apache-tomcat-10.0.7/ tomcat
    ‘tomcat’ -> ‘apache-tomcat-10.0.7/’ [root@tomcat01 apps]# ll
    total 0
    drwxr-xr-x 9 root root 220 Jul 5 11:34 apache-tomcat-10.0.7
    lrwxrwxrwx 1 root root 21 Jul 5 11:35 tomcat -> apache-tomcat-10.0.7/
  3. 启动和停止tomcat服务:

    #启动tomcat服务:
    [root@tomcat01 apps]# /apps//tomcat/bin/startup.sh
    Using CATALINA_BASE: /apps/tomcat
    Using CATALINA_HOME: /apps/tomcat
    Using CATALINA_TMPDIR: /apps/tomcat/temp
    Using JRE_HOME: /usr
    Using CLASSPATH: /apps/tomcat/bin/bootstrap.jar:/apps/tomcat/bin/tomcat-juli.jar
    Using CATALINA_OPTS:
    Tomcat started. #查看tomcat监听端口。tomcat默认监听在TCP/8080端口:
    [root@tomcat01 apps]# ss -ntlp
    State Recv-Q Send-Q Local Address:Port Peer Address:Port
    LISTEN 0 100 [::]:8080 [::]:* users:(("java",pid=88545,fd=53))
    LISTEN 0 1 [::ffff:127.0.0.1]:8005 [::]:* users:(("java",pid=88545,fd=62)) #停止tomcat服务:
    [root@tomcat01 apps]# /apps/tomcat/bin/shutdown.sh
    Using CATALINA_BASE: /apps/tomcat
    Using CATALINA_HOME: /apps/tomcat
    Using CATALINA_TMPDIR: /apps/tomcat/temp
    Using JRE_HOME: /usr
    Using CLASSPATH: /apps/tomcat/bin/bootstrap.jar:/apps/tomcat/bin/tomcat-juli.jar
    Using CATALINA_OPTS:
  4. 使用systemd控制tomcat服务

    #添加tomcat的unit脚本
    [root@tomcat01 apps]# cat /usr/lib/systemd/system/tomcat.service
    [Unit]
    Description=Apache Tomcat Web Application Container
    After=network.target remote-fs.target nss-lookup.target
    [Service]
    Type=forking
    Environment=CATALINA_HOME=/apps/tomcat
    Environment=CATALINA_BASE=/apps/tomcat
    ExecStart=/apps/tomcat/bin/startup.sh
    ExecStop=/apps/tomcat/bin/shutdown.sh
    [Install]
    WantedBy=multi-user.target #重载脚本:
    [root@tomcat01 apps]# systemctl daemon-reload #启动和停止tomcat服务:
    [root@tomcat01 apps]# systemctl start tomcat.service
    [root@tomcat01 apps]# systemctl stop tomcat.service
  5. 客户端访问tomcat的默认页面:

3. Tomcat打开默认的管理页面

当我们访问Tomcat的默认页面时,点击主页上的server status,manager app,host manager都会提示403错误,提示需要配置basic认证才能访问。

根据提示信息,解决方法如下:

  1. 配置conf/tomcat-users.xml文件

    [root@tomcat01 ~]# vim /apps/tomcat/conf/tomcat-users.xml
    <tomcat-users>
    <role rolename="manager-gui"/>
    <role rolename="admin-gui"/>
    <user username="tomcat" password="123456" roles="manager-gui,admin-gui"/>
    </tomcat-users>
  2. tomcat默认只允许本地127.0.0.1进行basic认证,如果需要其他网段也能进行basic认证,需要配置允许的访问规则,配置文件为webapps/项目名称/META-INF/context.xml。

    [root@tomcat01 ~]# vim /apps/tomcat/webapps/host-manager/META-INF/context.xml
    <Valve className="org.apache.catalina.valves.RemoteAddrValve"
    allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192\.168\.20\.\d+" /> [root@tomcat01 ~]# vim /apps/tomcat/webapps/manager/META-INF/context.xml
    <Valve className="org.apache.catalina.valves.RemoteAddrValve"
    allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192\.168\.20\.\d+" />
  3. 访问页面进行测试

    点击页面时需要输入conf/tomcat-users.xml配置文件中定义的用户名密码认证。

server status页面用于监控tomcat的服务状态相关信息:

manager app用于管理tomcat的应用(停止和开启),以及发布应用。

host manager用于部署tomcat的虚拟主机:

tomcat(1)- tomcat服务介绍与安装的更多相关文章

  1. LAMP架构应用实战—Apache服务介绍与安装01

    LAMP架构应用实战—Apache服务介绍与安装01   一:Apache是什么 Apache是Apache基金会开发的一个高性能.功能强大.安全可靠.灵活的开放源码的WEB服务软件 二:Apache ...

  2. Linux系统学习 二十、SAMBA服务—介绍、安装、端口

    1.简介 网络数据文件共享服务器 可以和Windows中的网上邻居通用 数据共享的方法: Windows中最常用的是“网上邻居”.网上邻居使用的文件系统是CIFS(通用互联网文件系统)协议进行数据共享 ...

  3. Tomcat服务器的介绍、安装配置

    [1] Tomcat服务器的介绍 1.是一个免费的.开饭源代码的Servlet服务器,目前非常流行. 2.Tomcat服务器是Apache软件基金会的一个顶级项目,由Apache.Sun等公司共同开发 ...

  4. Tomcat介绍、安装JDK、安装Tomcat

    6月26日任务 16.1 Tomcat介绍16.2 安装jdk16.3 安装Tomcat扩展java容器比较 http://my.oschina.net/diedai/blog/271367 http ...

  5. 如何启动免安装版Tomcat并将Tomcat添加到服务中

    1.安装jdk,并配置环境变量 (1)在Path中添加 F:\Program Files\Java\jdk1.8.0_25\bin (2)添加一个JAVA_HOME变量,变量值为F:\Program ...

  6. 免安装版本tomcat 指定的服务并未以已安装的服务存在,Unable to open the service

    今天在自己的电脑上安装了Tomcat6.0.14,是在Tomcat主页上直接下载的免安装版.但是把文件解压的之后,双击Tomcat6w.exe时,去出现了"指定的服务并未以已安装的服务存在, ...

  7. Linux(Debian) 上安装tomcat并注册服务开机自启动

    1.准备工作 a.下载tomcat linux的包,地址:http://tomcat.apache.org/download-80.cgi,我们下载的版本是8.0,下载方式如图:          b ...

  8. centos 安装tomcat 7为服务

    3:安装Tomcat 下载apache-tomcat-7.0.33.tar.gz.解压缩: tar -xzvf apache-tomcat-7.0.33.tar.gz 将解压缩后的文件夹拷贝到/usr ...

  9. Tomcat(64位)免安装版的环境安装与配置

    本篇博客主要介绍Tomcat(64位)免安装版的环境安装与配置,该篇文章同样适合于32位Tomcat免安装版的环境安装与配置. 该篇博客中的大部分内容同百度经验中的<出现unable to op ...

  10. tomcat的搭建和介绍

    第19章 tomcat的搭建 19.1 tomcat学习之前的预备知识 19.1.1 什么是JVM和JDK,JRE JVM            java虚拟机,实现一份代码可以在不同的平台执行,具有 ...

随机推荐

  1. llama2+localGPT打造纯私有知识助手

    通过部署llama2系列,可以构建本地私有的知识小助手 用来输出一写周报.月报,甚至辅助数据分析都可以(想想都很轻松) 想要大模型支持特定的数据集,就需要进行专业的fine-turing 但是fine ...

  2. PyCharm专业版延长使用时间【极简】

    关注公众号[靠谱杨阅读人生]回复[py]获取破解包! 准备好最新版本的PyCharm(去官网下载页面上的第一个就可以,我使用的版本如下图所示) 打开软件选择试用,进去之后可以新建一个项目然后把这个压缩 ...

  3. 22 axios和axios拦截器

    1. axios 由于jquery有严重的地狱回调逻辑. 再加上jquery的性能逐年跟不上市场节奏. 很多前端工程师采用axios来发送ajax. 相比jquery. axios更加灵活. 且容易使 ...

  4. 劫持TLS绕过canary pwn89

    劫持TLS绕过canary pwn88 首先了解一下这个东西的前提条件和原理 前提: 溢出字节够大,通常至少一个page(4K) 创建一个线程,在线程内栈溢出 原理: 在开启canary的情况下,当程 ...

  5. 深入理解 Java 循环结构:while、do while、for 和 for-each 循环

    Java 循环 循环可以执行一个代码块,只要达到指定的条件.循环很方便,因为它们节省时间,减少错误,并使代码更易读. Java While 循环 while 循环会循环执行一个代码块,只要指定的条件为 ...

  6. Go 语言中结构体的使用和示例

    结构体(简称struct)用于创建不同数据类型的成员集合,放入一个单一的变量中.虽然数组用于将相同数据类型的多个值存储在单一变量中,但结构体用于将不同数据类型的多个值存储在单一变量中.结构体对于将数据 ...

  7. innoSetup打包文件编写模板

    现在打包主要是使用 innosetup 这个软件来进行打包,支持录制脚本和手动编写脚本,比较好用. 此文章主要记录手写脚本,便于后期查询,借鉴. 文档: inno setup :https://blo ...

  8. 最全能的AI换脸软件,FaceFusion下载介绍(可直播)

    FaceFusion是一款多功能的AI换脸软件,它不仅能图片.视频换脸,还可以直播换脸,换脸效果真实.自然 与大多数换脸软件不同的是,FaceFusion不仅支持N卡处理程序(Azure),还额外提供 ...

  9. docker 应用篇————tomcat例子[七]

    前言 虽然我干的事情和java不多,但是例子是为了熟悉原理,而不是为了例子而例子的,故而整理一下tomcat的例子. 正文 使用官方示例: 然后运行一下. 没有找到然后进行下载了. 可以看到这里就已经 ...

  10. esp8266,arduino,网页显示dht11温湿度,控制继电器开关,局域网智能家居

    不说了,上代码,用arduino实现esp8266代码 #include <ESP8266WiFi.h> #include <WiFiClient.h> #include &l ...