问题标签 [rewritemap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
118 浏览

apache - 基于查询字符串查找的 Apache httpd 重写 url

我需要使用 (queryparam servername) 的文本映射重写 URL,以根据查询参数将请求定向到不同的后端服务器。

我已经尝试使用 prg: 类型和 perl 脚本的 RewriteMap、RewriteRule。但是查询字符串在查找脚本中不可见。

例如地图文件

如果输入 URL 是 http://myrouter.com:8080/a/b/c?query=QS2

那么它应该被重写并发送到 http://Server1:9988/a/b/c?query=QS2 (是的,查询字符串)

http://myrouter.com:8080/a/b/c?query=QS4发送到 http://Server4:9988/a/b/c?query=QS4

我目前的试验似乎没有帮助。

我根据 URL 中的参数查找了Proxy 但这对于一组有限的查找条目很有用;不适用于映射到我正在寻找的 10 个后端服务器的 10K 查询参数。

谢谢。