将Nginx修补为ip_hash 4个八位字节而不是3个
我目前正在我的网络上运行两个后端服务器,并在Windows上与Nginx进行负载平衡. 我正在加载测试系统,但是我的所有流量都是针对一台服务器的.这是因为ip_hash算法按前3个八位字节对流量进行排序,即111.222.333.XXX 这是一个问题,因为我瞄准服务器的所有流量都具有相同的基地址(相同的前3个八位字节),因此我的流量都不会转到另一个服务器.有没有人知道修补或更改ip_hash算法以过滤4个八位字节的方法. 谢谢 最佳答案 Nginx开源版本支持散列指令,该指令可以与商业版提供的粘性会话机制类似地工作(但不完全相同):
https://www.nginx.com/resources/admin-guide/load-balancer/ 那么如何使用hash方法从IPv4中使用4个八位字节?让我们来看看如何从嵌入式变量部分http://nginx.org/en/docs/http/ngx_http_core_module.html#variables获取客户端IP
所以代码看起来像:
更新: 如果看一下Stream模块(TCP代理),第一个例子显示了完全相同的方法: (编辑:4S站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- nginx更改specyfic url的根文件夹
- Nginx挂起重启
- ubuntu – chef-solo错误Errno :: ENOENT:没有这样的文件或
- apache-2.2 – 在不同的Web服务器(nginx,apache,iis等)中重
- 在具有Nginx和Gunicorn的生产环境中,使用unix套接字或tcp绑
- Nginx无法从docker 1.10.1中的嵌入式DNS获取主机
- 检查在nginx上访问我网站的IP
- Nginx Php-fpm在任何地方都没有记录500错误
- 带有PHP7和Nginx 1.9.9的502 Bad Gateway
- 在Ubuntu 10.04上使用Nginx设置龙卷风,供生产使用