技术解析

nginx 反相代理这么设置一个概率跳转至另外一个域名
0
2021-05-26 22:35:06
idczone

Nginx 反相代理这么设置一个概率跳大带宽服务器转至另外一个域名
1.com 反向代理 2.com 设置一个 20%概率跳转至 3.com 这么实现


cache key一样了

有没有智能的

你需要一个 nginx_lua 模块,可以选择在 rewrite_by_lua 进行控制

有相关文档吗没用过这个


...
http://lmgtfy.com/?q=nginx_lua


location / {
rewrite_by_lua '
local res = ngx.location.capture("/check-spam")
if res.body == "spam" then
ngx.redirect("/terms-of-use.html")
end
'; fastcgi_pass ...;
}
这个概率应该怎么写呢

nginx lua 支持 random 随机函数
random=math.random()
你可以针对这个搜索

if时间秒来设置概率?

ok我找一下

Nginx 有 AB test模块啊……

这是要做什么啊







能不能设置10个轮循 然后8个是代理至源网站 2个到其他服务器,轮到其他服务器这2个其他服务器的就跳转。 不知道能不能对同一个ip源进行轮循

这个明显的在你的原服务器进行处理就可以了,为什么要代理服务器处理呢… 另外lua应当是可以的

真不知道 你想做什么 。。。这个写个程序 就可以啊

就是我想反代某个网站 想设置一个概率转到我自己的网站


我看nginx-http-footer-filter 用这个在页面加几行代码来实现概率跳转可以吗?

Let me google it for you.
http://nginx.org/en/docs/http/ngx_http_split_clients_module.html
http://nginx.org/en/docs/http/ngx_http_upstream_module.html

这个正是我要的

还要增加一个同一ip地址固定时间内只跳转1次

这个比较麻烦
Nginx为了性能,基本上是无状态的
也许可以用cookies,但是Nginx判断cookie也麻烦
或者可以加个cgi后端,返回个跳转给Nginx不复杂,比较恶心
最简单应该是带尾巴,不过处理不好的话上游会发现。除了这个没有其他问题

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服