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

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

相关推荐
宁zz5 小时前
乌班图安装jenkins
运维·jenkins
无名之逆5 小时前
Rust 开发提效神器:lombok-macros 宏库
服务器·开发语言·前端·数据库·后端·python·rust
大丈夫立于天地间5 小时前
ISIS协议中的数据库同步
运维·网络·信息与通信
rainFFrain6 小时前
单例模式与线程安全
linux·运维·服务器·vscode·单例模式
GalaxyPokemon6 小时前
Muduo网络库实现 [九] - EventLoopThread模块
linux·服务器·c++
xujiangyan_7 小时前
nginx的反向代理和负载均衡
服务器·网络·nginx
@郭小茶8 小时前
docker-compose方式部署docker项目
运维·docker·容器
GalaxyPokemon8 小时前
Muduo网络库实现 [十] - EventLoopThreadPool模块
linux·服务器·网络·c++
自由鬼8 小时前
开源虚拟化管理平台Proxmox VE部署超融合
linux·运维·服务器·开源·虚拟化·pve
孤独得猿9 小时前
Qt常用控件第一部分
服务器·开发语言·qt