linux下nginx 配置反向代理及负载均衡

2024-09-03 02:58

本文主要是介绍linux下nginx 配置反向代理及负载均衡,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.1. 启动nginx

启动 :进入sbin目录

[root@localhost sbin]# ./nginx   或者启动的时候加载指定conf: ./nginx -c /usr/local/nginx/conf/nginx.conf

关闭nginx:

[root@localhost sbin]# ./nginx -s stop

推荐使用:

[root@localhost sbin]# ./nginx -s quit

重启nginx:

1、先关闭后启动:先执行上面的关闭,再启动开启。

2、刷新配置文件: [root@localhost sbin]#  ./nginx -s reload

1.2. 访问nginx

默认是80端口。

2.Nginx反向代理

上传tomcat到服务器并解压:

复制tomcat生成tomcat01、tomcat02

修改tomcat02端口号:

vim tomcat02/conf/server.xml

修改port为8086:

端口为8081:

8009为8010:

保存退出。

启动tomcat01,tomcat01

访问两个tomcat是否OK:

修改tomcat01,02的欢迎页 好做区分:

vim tomcat01/webapps/ROOT/index.jsp

添加端口号在页面:

vim tomcat02/webapps/ROOT/index.jsp

再次访问两个tomcat:

编辑nginx的conf文件添加以下内容:

vim nginx/conf/nginx.conf

	 upstream tomcat1{server 192.168.1.118:8080;}upstream tomcat2{server 192.168.1.118:8081;}server {listen       80;server_name  www.mytest1.com;location / {proxy_pass   http://tomcat1;index  index.html index.htm;}#error_page  404              /404.html;error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}server {listen       80;server_name  www.mytest2.com;location / {proxy_pass   http://tomcat2;index  index.html index.htm;}#error_page  404              /404.html;error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}

保存

添加ip域名映射,这里添加主机的就好 一般在 C:\Windows\System32\drivers\etc.hosts 文件

测试访问:

到这里反向代理是完成了

3、负载均衡

3.1. 轮询实现:

编辑nginx.conf 修改 upstream tomcat1 添加8081

启动nginx访问 tomcat01页面:

可以看到 访问www.mytest1.com  刷新页面,访问tomcat01 tomcat02 两个项目以此出现,轮询默认采用1:1的比例。

3.2.权重:

修改nginx.conf 在每个tomcat地址后面添加权重比: 

重启nginx: ./nginx -s reload

重新访问www.mytest1.com

可以看到8081出现2次 8080出现一次  按2:1的比率访问

这篇关于linux下nginx 配置反向代理及负载均衡的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1131831

相关文章

Spring Boot Maven 插件如何构建可执行 JAR 的核心配置

《SpringBootMaven插件如何构建可执行JAR的核心配置》SpringBoot核心Maven插件,用于生成可执行JAR/WAR,内置服务器简化部署,支持热部署、多环境配置及依赖管理... 目录前言一、插件的核心功能与目标1.1 插件的定位1.2 插件的 Goals(目标)1.3 插件定位1.4 核

RabbitMQ消息总线方式刷新配置服务全过程

《RabbitMQ消息总线方式刷新配置服务全过程》SpringCloudBus通过消息总线与MQ实现微服务配置统一刷新,结合GitWebhooks自动触发更新,避免手动重启,提升效率与可靠性,适用于配... 目录前言介绍环境准备代码示例测试验证总结前言介绍在微服务架构中,为了更方便的向微服务实例广播消息,

Nginx安全防护的多种方法

《Nginx安全防护的多种方法》在生产环境中,需要隐藏Nginx的版本号,以避免泄漏Nginx的版本,使攻击者不能针对特定版本进行攻击,下面就来介绍一下Nginx安全防护的方法,感兴趣的可以了解一下... 目录核心安全配置1.编译安装 Nginx2.隐藏版本号3.限制危险请求方法4.请求限制(CC攻击防御)

nginx中端口无权限的问题解决

《nginx中端口无权限的问题解决》当Nginx日志报错bind()to80failed(13:Permissiondenied)时,这通常是由于权限不足导致Nginx无法绑定到80端口,下面就来... 目录一、问题原因分析二、解决方案1. 以 root 权限运行 Nginx(不推荐)2. 为 Nginx

Linux进程CPU绑定优化与实践过程

《Linux进程CPU绑定优化与实践过程》Linux支持进程绑定至特定CPU核心,通过sched_setaffinity系统调用和taskset工具实现,优化缓存效率与上下文切换,提升多核计算性能,适... 目录1. 多核处理器及并行计算概念1.1 多核处理器架构概述1.2 并行计算的含义及重要性1.3 并

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

nginx -t、nginx -s stop 和 nginx -s reload 命令的详细解析(结合应用场景)

《nginx-t、nginx-sstop和nginx-sreload命令的详细解析(结合应用场景)》本文解析Nginx的-t、-sstop、-sreload命令,分别用于配置语法检... 以下是关于 nginx -t、nginx -s stop 和 nginx -s reload 命令的详细解析,结合实际应

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于