Linux系统(Centos)安装tomcat和部署Web项目

2023-05-16

文章结构

1.准备工作
2.在Linux下安装Tomcat8.0
3.Linux中配置tomcat的服务器启动和关闭和配置tomcat的开机启动
4.给tomcat配置用户名和密码登录
5.使用IDEA打包Maven托管的WEB项目
6.将JavaWeb项目发布到Tomcat8.0下面并且访问展示

1,准备工作

①,下载Linux版本的tomcat服务器,这里根据自己的需求下载相应的版本,作者这里下载的是Tomcat8.0
②,这里作者提供下载地址 如:Tomcat8.0下载链接,点击直达
如图:在这里插入图片描述
②,因为tomcat的安装使用需要依赖JDK运行环境,所以首先需要检查一下我们当前Linux系统中是否安装了JDK,检查方式如下:
    2.1 使用(Xshell或者puTTY工具)连接到Linux系统下面
    3.2 输入命令:java -version,如果显示jdk版本号,则证明已经安装,如果不显示,则证明没有安装,如果没有安装,请参考下面地址进行安装:Linux系统安装JDK详细教程,如图所示: 在这里插入图片描述
 ③,操作需要的软件以及系统如下:虚拟机(Vmware),虚拟机中安装的Centos系统,Xshell或者PuTTy,Xftp或者FileZilla,Tomcat8.0,IDEA或者eclipse开发的WebDemo或者Maven托管的WEB项目,apache-tomcat-8.0.29.tar.gz

2,在Linux下安装Tomcat8.0

①,通过上面的准备工作,我们已经拥有了安装和运行web项目的环境了,请确保上面所需的工具红环境齐全,才能进一步配置和安装等等工作,废话不多说,我们开始安装!
②,现在通过工具PuTTy或者Xshell工具连接Linux系统服务器,然后通过命令在 /在自己的目录 /usr/local/ 下创建文件夹 ,具体命令如下:
    2.1:cd usr/local/ mkdir myTomcat cd myTomcat/
    2.2: 然后使用Xftp或者PuTTy工具将tomcat复制到myTomcat文件夹下面,如图所示:
在这里插入图片描述
④,将上传的Tomcat8.0解压,解压之后重命名为tomcat,如图所示:
    4.1 tar -zxv -f apache-tomcat-8.5.37.tar.gz
    4.2 mv apache-tomcat-8.5.37 tomcat
    4.3 cd tomcat   在这里插入图片描述
⑤,解析完成后即可以启动Tomcat,检查是否安装成功,命令如下,如图所示:
    /usr/local/myTomcat/tomcat/bin/startup.sh  在这里插入图片描述
    5.1:出现上面的情况说明你已经成功启动Tomcat服务器,说明你很顺利已经完成到了百分之80,祝贺你,现在开始访问服务器,如果在你自己电脑上通过http://ip:8080能成功访问,那就不用配置防火墙,如果不能访问,现在开始我们来配置防火墙,开放8080端口!
    5.2:配置防火墙,在Linux下面的防火墙里面开放8080端口 会用命令如下:
        5.2-1:vim /etc/sysconfig/iptables
        5.2-2:打开之后按键盘(i)进入编辑模式,写入开发8080端口,如图所示:       在这里插入图片描述
5.2-3: 写完之后我们按键盘(ESC)按钮退出,然后按(:wq)保存并且关闭Vim。
⑥,之后重启防火墙,命令如下:

service iptables restart 

⑦,然后再次在浏览器中输入http://ip:8080,如果看到tomcat系统界面,说明安装成功,你可以进行下一步了。
⑧,停止Tomcat的命令是:/usr/local/myTomcat/tomcat/bin/shutdown.sh

3.Linux中配置tomcat的服务器启动和关闭和配置tomcat的开机启动

因为这一点细节比较多,我已经另外下了一篇文章进行总结,请读者点击链接跳转,进行对应操作!
配置服务器启动关闭和配置tomcat开机启动的文章详细

4.给tomcat配置用户名和密码登录

①,当tomcat安装完成之后,访问http://ip:8080即可以看到tomcat发布的网站,这时候需要管理我们发布网站,就需要登录tomcat,那么在centos中如何设置登录名和密码。
②,在tomcat安装包下面的conf文件下含有一个tomcat-user.xml文件,修改此文件即可,命令为:vim tomcat-users.xml
③,在打开的xml配置文件最后面写入下面这段配置文件之后保存并且退出即可。

    <role rolename="admin-gui"/>   
    <role rolename="manager-gui"/>
    <user username="tomcat" password="admin" roles="manager-gui,admin-gui"/>

④,在这里会出现一个问题,因为tomcat-users.xml里面有注释的用户设置的信息,取消注释,用文件提供的用户名和密码去访问的时候,会出现403错误,什么原因呢?这是因为我们没有指定用户所拥有的权限的原因,如我们现在想访问tomcat中图形化管理应用的功能,也就是Manager App,就需要指定manager-gui的权限,如果想访问host manager就必须指定admin-gui权限,故而如上面所示的配置。

注意:如果添加以上配置还是报403错误那就是ip受限制,现在请做如下操作:
我们打开/webapps/manager/META-INF/目录下context.xml文件,不是conf/目录下的context.xml文件,一定不要搞错了

我们将里面的内容注释掉或者修改为

<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|\d+\.\d+\.\d+\.\d+" />


⑤.配置完用户名密码之后,需要重新启动tomcat,命令如下:

     service tomcat stop
      service tomcat start

⑥,重启服务之后,检测是否登录成功,如果登录进入系统,则说明登录成功。

5.使用IDEA打包Maven托管的WEB项目

①,这里笔者职演示一下IDEA的Maven托管的WEB项目,(如果有其他情况,请自行百度!),
    1.1:首先打开IDEA工具,在右侧Maven点击展开,如图:   在这里插入图片描述
    在这里插入图片描述
   1.2:最后打成了WAR包
   注意:如果出现了其他的问题,可以评论留言,看到会及时回复!

6.将JavaWeb项目发布到Tomcat8.0下面并且访问展示

经过第5个步骤我们已经把项目打成了WAR包,现在开始我们开始部署到Linux系统服务器中!
   1,使用fileZilla工具或者Xhttp工具,上传文件!
   2,把我们打好的war包上传到我们Linux系统上安装的tomcat8服务器中,具体上传目录如下:
 /usr/local/myTomcat/tomcat/webapps
3,上传后的结果如图:
在这里插入图片描述
注意:
只要把我们打好的WAR包上传之后,tomcat服务器会自动帮我们解压,由上图可以看出!
4,完美项目运行结果如下图:
在这里插入图片描述

文章结束

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux系统(Centos)安装tomcat和部署Web项目 的相关文章

  • 在内核代码中查找函数的最佳方法[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我开始浏览内核代码 遇到的一件事是如何跟踪函数调用 结构定义等 有没有一种好的方法可以快速跳转到函数定义并退出 我尝试过 Source N
  • Linux 中 m 标志和 o 标志将存储在哪里

    我想知道最近收到的路由器通告的 m 标志和 o 标志的值 从内核源代码中我知道存储了 m 标志和 o 标志 Remember the managed otherconf flags from most recently received R
  • SSH,运行进程然后忽略输出

    我有一个命令可以使用 SSH 并在 SSH 后运行脚本 该脚本运行一个二进制文件 脚本完成后 我可以输入任意键 本地终端将恢复到正常状态 但是 由于该进程仍在我通过 SSH 连接的计算机中运行 因此任何时候它都会登录到stdout我在本地终
  • 为什么 Linux 没有 DirectX API?

    在考虑现代显卡的 Windows 系统上 DirectX API 的驱动程序端实现时 我想知道为什么此实现在非 Windows 系统 尤其是 Linux 上不可用 由于明显缺乏此功能 我只能假设有一个我无视的充分理由 但在我的原始理解中 我
  • 如何测量我的网站客户端的图像下载时间?

    在 Img 标签中 我们知道图像有一个 OnLoad 事件 该事件在图像完成加载时触发 但是我们能在图像开始下载时得到准确的测量结果吗 我正在尝试测量网站的页面加载时间 因此如果可能的话 了解加载图像需要多长时间将成为我分析的一部分 我想以
  • docker 非 root 绑定安装权限,WITH --userns-remap

    all 尝试让绑定安装权限正常工作 我的目标是在容器中绑定安装卷 以便 a 容器不以 root 用户身份运行入口点 二 docker daemon 配置了 userns remap 这样容器 主机上没有 root c 我可以绑定挂载和读 写
  • 使用其他聚合中的数据检查命令的有效性

    我目前正在开发我的第一个更大的 DDD 应用程序 目前来说 它运行得很好 但我们从早期就陷入了一个让我无法停止思考的问题 在我们的一些聚合中 我们保留对另一个聚合根的引用 这对于整个应用程序非常重要 基于它们的 ID 因此不存在硬引用 删除
  • 通过 Visual Studio 2017 使用远程调试时 Linux 控制台输出在哪里?

    我的Visual Studio 2017 VS2017 成功连接Linux系统 代码如下 include
  • 为什么 Tomcat 缺少内置的速率限制过滤器?

    从几个来源 1 https serverfault com questions 177742 2 http tomcat 10 x6 nabble com tomcat bandwidth limiter transfer rate lim
  • 在 Tomcat 8 上配置 SSL 并连接超时

    我设置了一个密钥库并从 openssl com 获得了 SSL 证书 我遵循的具体步骤在这里 https drive google com file d 0B6PUGo7cBLcDTzdkc0pzT2pTMk0 view usp shari
  • 如何在 Ubuntu 中创建公共 HTML 文件夹?

    简单的问题 但由于某种原因我无法在谷歌上找到确切的答案 我在 Slicehost 上安装了全新的 Ubuntu 并且想在我的主目录中为包含一堆静态 HTML 文件的简单网站创建一个公共目录 我该怎么做呢 只是打字的问题吗mkdir publ
  • 从 ttyUSB0 写入和读取,无法得到响应

    我对 Linux tty 不太有经验 我的环境是带有丰富 USB 串行的 Raspbian 什么有效 stty F dev ttyUSB0 38400 cu l dev ttyUSB0 s 38400 cu to dev ttyUSB0作品
  • 使用 MAX_ORDER / 包含 mmzone.h

    根据https www kernel org doc Documentation networking packet mmap txt https www kernel org doc Documentation networking pa
  • 如何让R使用所有处理器?

    我有一台运行 Windows XP 的四核笔记本电脑 但查看任务管理器 R 似乎一次只使用一个处理器 如何让 R 使用全部四个处理器并加速我的 R 程序 我有一个基本系统 我使用它在 for 循环上并行化我的程序 一旦您了解需要做什么 此方
  • 将我的应用程序部署在 Tomcat 的根目录下

    我有我的应用程序的战争文件 我需要在根级别部署它 当前的网址是http localhost 8080 war name application name 您有几个选择 取出开箱即用的ROOT 从 tomcat 目录并将您的 war 文件重命
  • .net-core:ILDASM / ILASM 的等效项

    net core 是否有相当于 ILDASM ILASM 的功能 具体来说 我正在寻找在 Linux 上运行的东西 因此为什么是 net core ildasm 和 ilasm 工具都是使用此存储库中的 CoreCLR 构建的 https
  • Bash - 在与当前终端分开的另一个终端中启动命令的新实例

    我有一个简单的 bash 脚本 test sh 设置如下 bin bash args if args 0 check capture then watch n 1 ls lag home user capture0 watch n 1 ls
  • 静态方法的 Java 内存模型

    我来自操作系统和 C 语言背景 在代码编译时 世界很简单 需要处理和理解堆栈 堆文本部分等 当我开始学习 Java 时 我确实了解 JVM 和垃圾收集器 我对静态方法感到很有趣 根据我的理解 类的所有实例都会在堆中创建 然后被清理 但是 对
  • 如何在 Linux 中使用 C 语言使用共享内存

    我的一个项目有点问题 我一直在试图找到一个有据可查的使用共享内存的例子fork 但没有成功 基本上情况是 当用户启动程序时 我需要在共享内存中存储两个值 当前路径这是一个char and a 文件名这也是char 根据命令参数 启动一个新进
  • 绕过 dev/urandom|random 进行测试

    我想编写一个功能测试用例 用已知的随机数值来测试程序 我已经在单元测试期间用模拟对其进行了测试 但我也希望用于功能测试 当然不是全部 最简单的方法是什么 dev urandom仅覆盖一个进程 有没有办法做类似的事情chroot对于单个文件并

随机推荐

  • Python justswap自动化交易

    因为平时要在justswap上做一些自动化交易 xff0c 网上资料很少 xff0c 看了justswapapi文档之后 xff0c 发现只需要调用合约的方式就可以了 遂共享出自己的代码 span class token keyword f
  • RabbitMq学习笔记(五)—— Topic

    ReceiveTopicOne 匹配规则 span class hljs number 1 span span class hljs comment 声明交换器和队列 span channel exchangeDeclare EXCHANG
  • ViewBinding - Jetpack 视图绑定委托封装及使用示例

    通过视图绑定功能 xff0c 您可以更轻松地编写可与视图交互的代码 在模块中启用视图绑定之后 xff0c 系统会为该模块中的每个 XML 布局文件生成一个绑定类 绑定类的实例包含对在相应布局中具有 ID 的所有视图的直接引用 在大多数情况下
  • LiveData 的生命周期 - viewLifecycleOwner / this

    在给定所有者的生命周期内将给定的观察者添加到观察者列表中 事件在主线程上调度 如果 LiveData 已经有数据集 xff0c 它将被传递给观察者 方法 xff1a observe LifecycleOwner Observer 使用示例
  • 设计模式——生产者消费者模式

    1 基本概括 2 主要介绍 2 1 概念 生产者消费者模式是通过一个容器来解决生产者和消费者的强耦合问题 生产者和消费者彼此之间不直接通讯 xff0c 而通过阻塞队列来进行通讯 xff0c 所以生产者生产完数据之后不用等待消费者处理 xff
  • Arch linux安装deepin-wine和微信(wechat)

    一 保证有国内的镜像源 xff0c 不然下载很慢 xff0c 没有国内包的镜像源 xff0c 则软件列表会少很多国内的软件 如果没有国内镜像源 xff0c 请修改镜像源 sudo vim etc pacman d mirrorlist s
  • KVM虚拟化(一)

    一 KVM虚拟化架构 1 主流虚拟机架构 图中对比了几种主流虚拟化技术架构 xff1a ESXi Xen与KVM xff0c 其主要差别在与各组件 xff08 CPU 内存 磁盘与网络IO xff09 的虚拟化与调度管理实现组件有所不同 在
  • docker Centos 7 安装 xfce4 桌面 + x11vnc + novnc

    docker Centos 7 安装 xfce4 桌面 43 x11vnc 43 novnc 启动容器环境变量xfce4 桌面安装 启动 Xvfb安装 启动 xfce4 桌面 x11vnc安装 x11vnc启动 x11vnc novnc 上
  • linux C++ 环境下的ActiveMQ学习

    ActiveMQ 1 概述 ActiveMQ 是Apache出品 xff0c 最流行的 功能强大的即时通讯和集成模式的开源服务器 ActiveMQ 是一个完全支持JMS1 1和J2EE 1 4规范的 JMS Provider实现 提供客户端
  • LUbuntu16.10安装及自动使用root登录(Ubuntu类似)

    LUbuntu是一款新的轻量级Ubuntu发行版 xff0c 结合LXDE使得LUbuntu安装 运行速度极快 xff0c 硬件资源要求很低 xff0c 支持X86和ARM架构处理器 可以在http lubuntu net 根据自己电脑的系
  • 【源码分享】-wpf界面源代码分享

    好久以前做过一段时间的界面编程 C 43 43 C Wpf的都做过一点 xff0c 见 个人博客中UI类目 所以资料里面关于界面编程的代码会多一些 xff0c 有时间就整理发出来共享学习 13年的时候用WPF写过一个简单的小程序作爬虫来获取
  • 十大 Python GUI 框架比较

    图形用户界面 GUI 是任何 Web 应用程序中最重要的部分之一 有人会说最重要的部分 xff0c 因为今天的老练用户很快就会放弃可用性差的应用程序 Python 应用程序也是如此 新手 Python 程序员在掌握了 Python 编程的基
  • 如何用ps将图片修改成指定大小

    这篇文章主要介绍如何用ps将图片修改成指定大小 xff1a 一 按原像素比例 修改图片的尺寸 1 先来看看它原来的尺寸 xff0c 如图所示 500X481px 2 首先用ps将图片文件打开 xff0c 使用ps菜单命令 xff1a lt
  • docker 安装rabbitMQ(最详细)

    docker 安装rabbitMQ 1 rabbitMQ介绍 RabbitMQ是一套开源 xff08 MPL xff09 的消息队列服务软件 xff0c 是由 LShift 提供的一个 Advanced Message Queuing Pr
  • 阿里云-ECS云服务器跨地域部署k8s集群

    阿里云 ECS云服务器跨地域部署k8s集群 一 背景介绍二 环境准备2 1 ECS云服务资源清单2 2 K8s软件列表 三 阿里云ECS服务器网络问题3 1 问题阐述3 2 解决方案 四 服务节点调整 xff08 master xff0c
  • 代码命名规范是一种责任也是一种精神(工匠精神)

    代码命名规范之美 规范概述命名规范管理类命名BootstrapProcessorManagerHolderFactoryProviderRegistrarEngineServiceTask 传播类命名ContextPropagator 回调
  • Kubernetes集群搭建(高可用)附全自动脚本

    高可用Kubernetes集群搭建 一 前言介绍 1 1 重要概念 二 系统架构 2 1 架构基本需求 2 2 架构图 三 环境准备 3 1 云服务或虚拟机清单 3 2 网络配置 针对使用vmware虚拟机用户需要操作 3 3 虚拟机网络设
  • k8s 集群部署ingress-nginx

    k8s 集群部署ingress nginx 环境准备 helm方式安装ingress nginx master边缘节点 创建命名空间和部署ingress 第一个ingress 例子 查看ingress controller配置 其实就是对应
  • k8s 集群部署traefik

    k8s 集群部署traefik k8s 集群部署traefik 环境准备 下载traefik helm方式安装traefik master边缘节点 执行安装 查看安装结果 安装traefik dashboard dashboard安装和查看
  • Linux系统(Centos)安装tomcat和部署Web项目

    文章结构 1 准备工作 2 在Linux下安装Tomcat8 0 3 Linux中配置tomcat的服务器启动和关闭和配置tomcat的开机启动 4 给tomcat配置用户名和密码登录 5 使用IDEA打包Maven托管的WEB项目 6 将