服务器安装多个Tomcat

服务器安装多个Tomcat

因为申请了一个域名,然后想设置一个二级域名,让不同的二级域名访问到不同的项目,例如blog.booleandev.xyz访问到博客项目,www.booleandev.xyz访问到主页,网上找了找资料,发现一般是使用nginx反向代理映射到不同的端口,再跳转到不同的项目,因此想到自己的服务器上安装多个tomcat来玩一玩,顺便这么久没写博客了,最近工作也不是特别忙。好了,废话不说,正文开始了。

1.下载tomcat安装包放入服务器中

从网上下载tomcat的linux安装包,然后利用WinSCp软件拖入到服务器,我放得目录是/usr/local/tomcats,然后再将不同的端口的tomcat放入这个包下,例如80端口的tomcat的文件夹是/usr/local/tomcats/tomcat80,依次其它端口类推,这样放入,使得各个端口清晰明了。配置起来方便,我这一共安装了4个tomcat,端口号分别为80,8080,8081,8082,如果你还要更多,可以一次类推。

2.安装tomcat

首先将下载的tomcat放入/usr/local/tomcats/tomcat80,
然后解压tar -zxvf apache-tomcat-7.0.81.tar.gz,
解压之后,在将解压后的文件移动到tomcat80目录下,mv -r ./apache-tomcat-7.0.81/* ./
然后再将安装包复制到其它目录下,例如复制到8080端口目录下,cp -r ./* /usr/local/tomcats/tomcat8080,依次类推,tomcat就安装好了

3.配置tomcat全局变量

修改/etc/profile文件,vim /etc/profile
在末尾加入如下数据

##########tomcat-80###########
CATALINA_BASE=/usr/local/tomcats/tomcat80
CATALINA_HOME=/usr/local/tomcats/tomcat80
TOMCAT_HOME=/usr/local/tomcats/tomcat80##########tomcat-8080###########
CATALINA_8080_BASE=/usr/local/tomcats/tomcat8080
CATALINA_8080_HOME=/usr/local/tomcats/tomcat8080
TOMCAT_8080_HOME=/usr/local/tomcats/tomcat8080##########tomcat-8081###########
CATALINA_8081_BASE=/usr/local/tomcats/tomcat8081
CATALINA_8081_HOME=/usr/local/tomcats/tomcat8081
TOMCAT_8081_HOME=/usr/local/tomcats/tomcat8081##########tomcat-8082###########
CATALINA_8082_BASE=/usr/local/tomcats/tomcat8082
CATALINA_8082_HOME=/usr/local/tomcats/tomcat8082
TOMCAT_8082_HOME=/usr/local/tomcats/tomcat8082

4.修改tomcat的bin目录下的文件

修改tomcat安装包下的bin目录下的cataline.sh
# OS specific support. $var _must_ be set to either true or false.下面添加(80端口无需修改这)

export CATALINA_BASE=<span class="katex--inline"><span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>C</mi><mi>A</mi><mi>T</mi><mi>A</mi><mi>L</mi><mi>I</mi><mi>N</mi><msub><mi>A</mi><mn>8</mn></msub><mn>08</mn><msub><mn>0</mn><mi>B</mi></msub><mi>A</mi><mi>S</mi><mi>E</mi><mi>e</mi><mi>x</mi><mi>p</mi><mi>o</mi><mi>r</mi><mi>t</mi><mi>C</mi><mi>A</mi><mi>T</mi><mi>A</mi><mi>L</mi><mi>I</mi><mi>N</mi><msub><mi>A</mi><mi>H</mi></msub><mi>O</mi><mi>M</mi><mi>E</mi><mo>=</mo></mrow><annotation encoding="application/x-tex">CATALINA_8080_BASE
export CATALINA_HOME=</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.8778em;vertical-align:-0.1944em;"><span class="mord mathnormal" style="margin-right:0.07153em;">C</span><span class="mord mathnormal">A</span><span class="mord mathnormal" style="margin-right:0.13889em;">T</span><span class="mord mathnormal">A</span><span class="mord mathnormal">L</span><span class="mord mathnormal" style="margin-right:0.07847em;">I</span><span class="mord mathnormal" style="margin-right:0.10903em;">N</span><span class="mord"><span class="mord mathnormal">A</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.3011em;"><span style="top:-2.55em;margin-left:0em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">8</span></span></span></span><span class="vlist-s"></span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span><span class="mord">08</span><span class="mord"><span class="mord">0</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.3283em;"><span style="top:-2.55em;margin-left:0em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight" style="margin-right:0.05017em;">B</span></span></span></span><span class="vlist-s"></span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span><span class="mord mathnormal">A</span><span class="mord mathnormal" style="margin-right:0.05764em;">SE</span><span class="mord mathnormal">e</span><span class="mord mathnormal">x</span><span class="mord mathnormal">p</span><span class="mord mathnormal" style="margin-right:0.02778em;">or</span><span class="mord mathnormal" style="margin-right:0.07153em;">tC</span><span class="mord mathnormal">A</span><span class="mord mathnormal" style="margin-right:0.13889em;">T</span><span class="mord mathnormal">A</span><span class="mord mathnormal">L</span><span class="mord mathnormal" style="margin-right:0.07847em;">I</span><span class="mord mathnormal" style="margin-right:0.10903em;">N</span><span class="mord"><span class="mord mathnormal">A</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.3283em;"><span style="top:-2.55em;margin-left:0em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight" style="margin-right:0.08125em;">H</span></span></span></span><span class="vlist-s"></span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span><span class="mord mathnormal" style="margin-right:0.05764em;">OME</span><span class="mspace" style="margin-right:0.2778em;"><span class="mrel">=</span></span></span></span></span>CATALINA_8080_HOME
</span></span></span></span></span></span></span></span>

5.修改tomcat的service.xml文件

修改tomcat下的conf下面的server.xml

修改服务端口(默认为8005)我这是8080端口,依次加1

<Server port="8006" shutdown="SHUTDOWN">

修改tomcat的端口号

<Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" />

修改tomcat连接端口号(默认为8442)我这+1

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"maxThreads="150" SSLEnabled="true" scheme="https" secure="true"clientAuth="false" sslProtocol="TLS" />

依次按照这个方法去修改其他端口号的tomcat

6.启动测试

依次进入tomcat下的bin目录,启动tomcat ./startup.sh,,关闭tomcat的命令为./shutdown.sh
依次启动并在浏览器中测试,为了方便测试,我建议大家修改下tomcat/webapp/ROOT下的index.jsp,修改下每个接口的唯一标志,例如我是在tomcat版本后加入了端口号。

7.结束

好了,一个很简单的安装tomcat就完成了,后面如果有时间的话,我再使用nginx完成二级域名到不同项目的设置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/869155.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

STM32的SPI接口详解

目录 1.SPI简介 2.SPI工作原理 3.SPI时序 3.1 CPOL&#xff08;Clock Polarity&#xff0c;时钟极性&#xff09;&#xff1a; 3.2 CPHA&#xff08;Clock Phase&#xff0c;时钟相位&#xff09;&#xff1a; 3.3 四种工作模式 4.相关代码 4.1使能片选信号 4.2使能通…

SQL注入如何判断数据库类型

前言 在进行SQL注入之前&#xff0c;首先应该判断数据库的类型&#xff0c;不同的数据库在处理一些函数的时候会有一些微妙的差别&#xff0c;只有判断出是哪种数据库类型&#xff0c;这样才能根据数据库的类型选择合适的函数&#xff0c;更容易实现SQL注入。 # 前端与数据库…

初步理解三__《面向互联网大数据的威胁情报 并行挖掘技术研究》

初步理解三 5类战术标签 gtp 收集开源的网络安全报告并将其转化为统一的文本格式&#xff0c;并且标注了5类战术标签是一个涉及到数据处理和分类的复杂任务。以下是一种可能的处理方法&#xff1a; 数据收集和整合&#xff1a; 使用网络爬虫或API访问工具收集开源的网络安全…

收银系统源代码-收银端UI风格

智慧新零售收银系统是一套线下线上一体化收银系统&#xff0c;给商户提供含线下收银称重、线上商城、精细化会员管理、ERP进销存、丰富营销活动、移动店务助手等一体化的解决方案。 如Windows版收银&#xff08;exe安装包&#xff09;、安卓版收银&#xff08;apk安装包&#…

什么是 YAML?了解 YAML 语法与最佳实践

什么是 YAML YAML 是 "YAML Aint Markup Language" 的缩写&#xff0c;这是一种用于数据序列化的基于文本的标记语言。 YAML 的用途 YAML (YAML Aint Markup Language) 是一种人类可读的数据序列化格式&#xff0c;主要用于以下目的&#xff1a; 作为配置文件格式…

C++:C++入门基础|命名空间|输入输出

欢迎来到HarperLee的学习笔记&#xff01; 博主主页传送门&#xff1a; HarperLee的博客主页! 想要一起进步的uu来后台哦&#xff01; 一、什么是C? 在此之前&#xff0c;我们所学习的C语言是一种结构化和模块化的语言&#xff0c;适合处理较小规模的程序。对于复杂的问题&a…

25.无源蜂鸣器驱动设计

相对于有源蜂鸣器&#xff0c;无源蜂鸣器的成本更低&#xff0c;声音频率可控。而有源蜂鸣器因其内部 自带振荡源&#xff0c;只要加上适当的直流电源即可发声&#xff0c;程序控制较为方便。 &#xff08;1&#xff09;设计定义&#xff1a;设计一个无源蜂鸣器的驱动程序&…

二阶线性微分方程

假设一个质量 m 连接在弹簧和阻尼器上&#xff0c;系统受到外力 F(t) 的作用。设 x(t) 为质量的位移&#xff0c;系统的运动方程可以用牛顿第二定律表示为&#xff1a; 这是一个典型的二阶线性非齐次微分方程&#xff1a;其中&#xff1a; m 是质量&#xff08;Fma&#xff09…

调度的艺术:Eureka在分布式资源调度中的妙用

调度的艺术&#xff1a;Eureka在分布式资源调度中的妙用 引言 在微服务架构中&#xff0c;服务的分布式资源调度对于确保系统高效运行至关重要。Eureka作为Netflix开源的服务发现框架&#xff0c;虽然本身不直接提供资源调度功能&#xff0c;但可以与其他工具和策略结合使用&…

蓝桥杯备赛攻略(怒刷5个月拿省一)

十五届蓝桥杯结束&#xff0c;up也在这次比赛中获得了不错的成绩&#xff0c;为了帮助大家在25年蓝桥杯上获得好的成绩&#xff0c;我将根据今年的经验写一份蓝桥杯的备赛攻略&#xff0c;希望能帮到大家。 参赛准备 蓝桥杯算法赛必须指定一个编程语言赛道报名&#xff0c;也就…

【vueUse库Watch模块各函数简介及使用方法--下篇】

vueUse库是一个专门为Vue打造的工具库,提供了丰富的功能,包括监听页面元素的各种行为以及调用浏览器提供的各种能力等。其中的Browser模块包含了一些实用的函数,以下是这些函数的简介和使用方法: vueUse库Sensors模块各函数简介及使用方法 vueUseWatch函数1. watchImmedia…

Access系统开发必备技巧:轻松调整应用程序标题,提升用户体验!

Hi~ 大家好久不见呀&#xff01; 一直忙&#xff0c;但不知道在忙啥&#xff0c;好多事情都落下了&#xff0c;ERP的文章最近也没有时间更新&#xff0c;接下去我还在考虑弄个直播&#xff0c;不知道大家有没有什么想了解的&#xff0c;大家给我留言&#xff0c;直播的时候给…

aspose实现水印功能

文章目录 aspose给pdf添加水印aspose给word添加水印aspose给excel添加水印aspose给ppt添加水印aspose给图片添加水印 其他官网文档word水印(java)文档 客户要做水印功能&#xff0c;要求支持pdf&#xff0c;word&#xff0c;excel&#xff0c;ppt&#xff0c;图片等。 那么用as…

vue学习day02-Vue指令-v-html、v-show与v-if、v-else与v-else-if、v-on、v-bind、v-for、v-model

6、Vue指令 指令&#xff1a;带有v-前缀的特殊标签属性 &#xff08;1&#xff09;v-html 作用&#xff1a;设置元素的innerHTML 语法&#xff1a;v-html“表达式” 示例&#xff1a; 提供一个地址&#xff0c;这里是百度的地址&#xff0c;通过v-html渲染 结果&#xff…

怎么将图片旋转30度?旋转图片的几种方法推荐

怎么将图片旋转30度&#xff1f;在创作过程中&#xff0c;我们常常需要处理图片的镜像效果&#xff0c;确保其视觉效果和构图都达到最佳状态。镜像效果的合理运用不仅可以解决视觉单调的问题&#xff0c;还能在艺术作品中吸引观者的注意力。此外&#xff0c;镜像可以有效地调整…

大数据之Hadoop平台的搭建

实验环境 三台虚拟机 master slave1 slave2 服务器集群单节点&#xff0c;机器最低配置&#xff1a;双核 CPU、8GB 内存、100G 硬盘运行环境CentOS 7.4服务和组件服务和组件根据实验需求安装 1实验过程 1.1实验任务一&#xff1a;配置 Linux 系统基础环境 1.1.1步骤一&a…

YModem在Android上的实现

&#xff08;一&#xff09;参考文献 【安卓相关】蓝牙基于Ymodem协议发送bin文件&#xff0c;对硬件设备进行升级。 - 简书当Android BLE遇上YModem - 简书 &#xff08;二&#xff09;收发机制 基于我们具体的需求&#xff0c;在原有的基础上加了一下前后的处理。 * MY YMO…

在Java中,创建一个实现了Callable接口的类可以提供强大的灵活性,特别是当你需要在多线程环境中执行任务并获取返回结果时。

在Java中&#xff0c;创建一个实现了Callable接口的类可以提供强大的灵活性&#xff0c;特别是当你需要在多线程环境中执行任务并获取返回结果时。以下是一个简单的案例&#xff0c;演示了如何创建一个实现了Callable接口的类&#xff0c;并在线程池中执行它。 首先&#xff0…

Cesium版本升级webgl问题,glsl代码关键字修改

简介 Cesium 从1.102.0 开始&#xff0c;Cesium 默认使用 WebGL2 上下文。一些webgl特效代码在webgl1中支持&#xff0c;但是在版本升级后&#xff0c;运行会报各种glsl代码错误。现在有两种解决方案。详细办法描述如下所示。 1、修改配置使用WebGL1 地球初始化配置如下&…

wordpress外贸建站公司案例英文模板

Indirect Trade WP外贸网站模板 WordPress Indirect Trade外贸网站模板&#xff0c;建外贸独立站用wordpress模板&#xff0c;快速搭建十分便捷。 衣物清洁wordpress独立站模板 洗衣粉、洗衣液、衣物柔顺剂、干洗剂、衣领净、洗衣皂等衣物清洁wordpress独立站模板。 家具wordpr…