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通却不能访问?因为服务器是基于端口通信的,所以也要检查端口

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

相关推荐
海盗123417 分钟前
.NET编码规范03-C#命名规范大全
linux·服务器·.net
WZF-Sang19 分钟前
TCP和UDP协议
linux·服务器·网络·c++·学习·tcp/ip·udp
做个文艺程序员25 分钟前
Linux第11篇:存储管理——磁盘分区、LVM 与文件系统
linux·运维·服务器
懂AI的老郑25 分钟前
工业检测场景下智能体的应用:从自动化到智能化
运维·自动化
AI视觉网奇32 分钟前
BambuStudio 自定义加载页面
服务器·前端·javascript
运维大师1 小时前
【云原生与DevOps】08-多云容灾架构设计:跨Region自动切换实践
运维·云原生·devops
一氧化二氢.h1 小时前
AI大模型批量自动化评测脚本
运维·人工智能·自动化
是枚小菜鸡儿吖1 小时前
服务器出问题别等用户反馈:用Python和钉钉搭一套轻量告警系统
服务器·python·钉钉
jarreyer9 小时前
【AI Agent】大模型自动化载体
运维·自动化
xixingzhe29 小时前
SpringBoot + Nginx 免鉴权接口安全防护方案
运维·nginx·安全