当前位置: 首页 > news >正文

【案例40】Apache中mod_proxy模块的使用

NC中间件

应用场景:配置了apache的情况,包括uap集群,配置https等场景下均适用;如果是单机(NC单结点情况不存在问题,则不用配置这项;  was环境也不用配置此项。)

解决方案:按如下两个步骤进行配置

步骤一:将服务器信息-集群配置中配置的AJP协议删除

步骤二修改配置文件

编辑${HTTPD_HOME}/conf/httpd.conf文件,开启以下模块, Apache启动时自动加载:

1、开启模块

修改${HTTPD_HOME}/conf/httpd.conf,增加以下模块(取消注释,如有其他依赖, 则相应取消注释)

LoadModule proxy_module modules/mod_proxy.so 
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule manager_module modules/mod_manager.so
LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so

2、编辑${HTTPD_HOME}/conf/httpd.conf

在文件结尾处添加负载均衡的Server信息和会话session保持配置,以下是一个配置示例:

<VirtualHost *>ServerName orcl.example.comErrorLog logs/orcl.example.com-error_logCustomLog logs/orcl.example.com-access_log commonProxyRequests OffProxyPreserveHost OnHeader add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; secure" env=BALANCER_ROUTE_CHANGEDProxyPass / balancer://httpproxy/ stickysession=routeId<Proxy balancer://httpproxy/>BalancerMember http://IP1:port1 route=ncMem01BalancerMember http://IP2:port2 route=ncMem02</Proxy>
</VirtualHost> 

以上配置参数说明

1、ProxyPass :将远程服务器映射到本地服务器的URL空间

2、balancer:// :代理的指令类型

3、sticky-session粘连,就是说用户一旦访问了某个 Balancer Member,就给他个 cookie,让他在后面的请求都访问那个 Balancer Member 。ProxyPass 那行 最后的 stickysession=routeId,表示从 cookie 中读取 routeId,并自动分配到相应的服务上去。如果后端服务器使用不同的cookie名称或者URL编码的ID(像servlet容器),使用|来分开他们。第一个部分针对cookie,第二个针对路径。如:ProxyPass / balancer:// httpproxy、stickysession=JSESSIONID|jsessionid

4、ProxyRequests : 在使用ProxyPass指令的时候,ProxyRequests指令通常都应该是关闭 的。

5、BalancerMember : 均衡成员

6、route : 工作单元的路由,用于负载均衡器中。该路由是附加给会话ID的一个值。

http://www.lryc.cn/news/417863.html

相关文章:

  • 简单安装Android Studio并使用
  • 在Python中,模块(Module)和包(Package)
  • Node版本管理工具
  • 创建并发布NPM模块
  • 20240807软考架构-------软考31-35答案解析
  • 简单实现二叉树(链表实现)
  • 搭建 Web 群集Haproxy
  • PDF隐写思路
  • Pycharm 常用快捷键
  • android音频录音,(一)MediaRecorder简介
  • autoX.js
  • 日本软文发稿:日本主流发稿媒体有哪些?
  • 翰德恩赋能中国邮政信息科技产品创新系列培训
  • 分享一个基于SpringBoot的英语学习平台Java英语学习任务打卡系统(源码、调试、LW、开题、PPT)
  • Golang学习笔记
  • 详解【多线程与并发】之线程
  • Linux安全与高级应用(四)深入探索MySQL数据库:安装、管理与安全实践
  • 「iOS」自定义Modal转场——抽屉视图的实现
  • 【数据结构】顺序结构实现:特殊完全二叉树(堆)+堆排序
  • 【c++学习技术栈】
  • swift 自定义DatePacker
  • MySQL事务,锁,MVCC总结
  • 24/8/7 算法笔记 支持向量机回归问题天猫双十一
  • win7系统利用定时启动+脚本实现MySQL文件自动备份
  • 基于Java多线程处理数据
  • 日常知识点之遇到问题结构体按位构造协议时和期望不一致,研究记录一下
  • spring mvc 文件下载
  • Qt WebEngine基于WebEngineScript注入js脚本
  • 案例分享-国外UI设计界面赏析
  • 用PyTorch 从零开始构建 BitNet 1.58bit