我正在使用Apache模块mod_proxy_balancer
作为Windows机器上的负载均衡器,将流量定向到iis上的不同端口。apache 和 IIS 在同一台服务器上运行。
我正在运行一些负载测试,需要将唯一 id 附加到 url。是否可以从cookie中获取JsessionId并将其附加到URL中。如果是这样,如何?
另一种选择可能是生成一些唯一的字符串并将其附加到 url?
我的 Apache 知识几乎没有限制,似乎无法让 url 重写工作。
这是我httpd-vhosts config
文件:
<VirtualHost _default_:8080>
DocumentRoot "C:/HTTPD/Apache24/htdocs"
#ServerName www.example.com:80
Header add Set-Cookie: "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED
<Proxy balancer://mycluster>
BalancerMember "http://localhost:8081" route=node110
BalancerMember "http://localhost:8082" route=node111
ProxySet lbmethod=byrequests
</Proxy>
ProxyPass / balancer://mycluster/ stickysession=ROUTEID scolonpathdelim=On timeout=600
ProxyPassReverse / balancer://mycluster/
ProxyPreserveHost On
</VirtualHost>
您可以使用随机或UNIQUE_ID,另一种选择是组合各种 TIME 服务器变量,如 TIME_SEC。
您还可以使用 prg,它使用外部程序或脚本来调用重写。
有关更多详细信息,请参阅以下链接:
.htaccess - 在网址后添加随机文本
htaccess:将随机字符串添加到 URL
阿帕奇模块mod_rewrite