8月11日上课内容 nginx的多实例和动静分离

多实例部署

在一台服务器上有多个tomcat的服务。

配置多实例之前,看单个实例是否访问正常。

1.安装好 jdk
2.安装 tomcat

cd /opt

tar zxvf apache-tomcat-9.0.16.tar.gz

mkdir /usr/local/tomcat

mv apache-tomcat-9.0.16 /usr/local/tomcat/tomcat1

cp -a /usr/local/tomcat/tomcat1 /usr/local/tomcat/tomcat2

3.配置 tomcat 环境变量

vim /etc/profile.d/tomcat.sh

#tomcat1

export CATALINA_HOME1=/usr/local/tomcat/tomcat1

export CATALINA_BASE1=/usr/local/tomcat/tomcat1

export TOMCAT_HOME1=/usr/local/tomcat/tomcat1

#tomcat2

export CATALINA_HOME2=/usr/local/tomcat/tomcat2

export CATALINA_BASE2=/usr/local/tomcat/tomcat2

export TOMCAT_HOME2=/usr/local/tomcat/tomcat2

export CATALINA_HOME1=/usr/local/tomcat/tomcat1

tomcat主目录的路径,包含所有tomcat的文件

export CATALINA BASE1=/usr/local/tomcat/tomcat1
指定tomcat实例目录
export TOMCAT_HOME1=/usr/local/tomcat/tomcat1

tomcat主目录的路径,包含所有tomcat的文件

这三条在环境变量中声明,配置成全局变量,方便后面传参/赋值

source /etc/profile.d/tomcat.sh

进入控制tomcat运行的文件,把服务shutdown一下

基于Tomcat主目录,强行复制一个相同的

vim /etc/profile.d/tomcat.sh

4.修改 tomcat2 中的 server.xml 文件,要求各 tomcat 实例配置不能有重复的端口号
vim /usr/local/tomcat/tomcat2/conf/server.xml

<Server port="8006" shutdown="SHUTDOWN"> #22行,修改Server prot,默认为8005 -> 修改为8006

<Connector port="8081" protocol="HTTP/1.1" #69行,修改Connector port,HTTP/1.1 默认为8080 -> 修改为8081

<Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />

#116行,修改Connector port AJP/1.3,默认为8009 -> 修改为8010

第一个连接器默认监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器。
第二个连接器默认监听8009端口,负责和其他的HTTP服务器建立连接。
在把Tomcat与其他HTTP服务器集成时,需要用到这个连接器。

第三个连接器
port="8010":指定AJP连接器监听的端口号。在这个示例中,AJP连接器监听在8010端口上。

protocol="AJP/1.3":指定连接器所使用的协议。这里设置为AJP/1.3,表示使用AJP协议的版本1.3。

redirectPort="8443":指定重定向端口。当AJP连接器接收到HTTP请求时,如果请求是通过HTTPS(加密)访问的,
则会将请求重定向到8443端口。

AJP连接器用于将静态资源和动态请求从前端Web服务器(如Apache HTTP Server)转发到Tomcat服务器。
这样可以将Tomcat服务器隐藏在防火墙之后,提高安全性,同时提供更高的性能,特别是在处理动态请求时。
常见的AJP连接器配置是为了将Tomcat与Apache HTTP Server或Nginx等前端服务器集成,以实现负载均衡、反向代理等功能

引入一个很好用的功能,是第三方的,需要安装

telnet 测试服务器ip地址是否能正常通信和测试端口通信是否正常

例:telnet 192.168.233.61 80

为什么能ping通却不能访问?因为服务器是基于端口通信的,所以也要检查端口

端口可能不存在 端口没有打开

相关推荐
猫头虎10 小时前
[精选] 2025最新MySQL和PostgreSQL区别、迁移、安全、适用场景全解析
运维·数据库·mysql·安全·postgresql·云原生·容器
心本无晴.10 小时前
RAG检索优化:文本分块策略如何大幅提升检索准确度
java·linux·服务器
生活很暖很治愈10 小时前
Linux——线程互斥,互斥锁
linux·运维·服务器
小李独爱秋10 小时前
模拟面试:说一下数据库主从不同步的原因。
运维·服务器·mysql·面试·职场和发展·性能优化
tryCbest11 小时前
Linux常用命令V2026
linux·运维
茶杯梦轩12 小时前
从零起步学习并发编程 || 第六章:ReentrantLock与synchronized 的辨析及运用
服务器·后端·面试
先做个垃圾出来………13 小时前
DeepDiff差异语义化特性
服务器·前端
i建模13 小时前
Omarchy挂载windows磁盘
linux·运维·windows
林姜泽樾13 小时前
linux基础第一章,linux的介绍和它和windows的区别
linux·运维·计算机网络·安全·网络安全
2401_8493391713 小时前
LVS实验
服务器·网络·lvs