我正在努力寻找答案,有没有可能将下面这样的NginxMap转换为Apache2(2.4)等价物?
server {
[...]
location ~* ^(/_matrix|/_synapse) {
proxy_pass http://$matrix_worker_upstream$request_uri;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $host;
client_max_body_size 50M;
proxy_http_version 1.1;
}
[...]
}
upstream synapse {
server 127.0.0.1:8008;
}
upstream generic-worker {
ip_hash;
server 127.0.0.1:8008;
server 127.0.0.1:8081;
}
upstream media_repository {
server 127.0.0.1:8085;
}
map $uri $matrix_worker_upstream {
default synapse;
~^/_matrix/client/(r0|v3)/sync$ generic-worker;
~^/_matrix/client/(api/v1|r0|v3)/events$ generic-worker;
~^/_matrix/client/(api/v1|r0|v3)/initialSync$ generic-worker;
~^/_matrix/client/(api/v1|r0|v3)/rooms/[^/]+/initialSync$ generic-worker;
[...]
}
字符串
如果我理解的好,上游可以转换为代理均衡器这样?
<Proxy balancer://generic-worker>
BalancerMember http://127.0.0.1:8080
BalancerMember http://127.0.0.1:8081
</Proxy>
型
但我不知道如何转换Map部分?(有负载的网址内Map)
这是一个Synapse(Matrix)与worker的配置。为什么是Apache2?这是为了避免Shibboleth与Matrix的额外配置。
1条答案
按热度按时间8oomwypt1#
这是我得到的,似乎工作,即使其他错误抬头.
字符串
上游转换为代理平衡器,但每个Map元素都转换为代理通行规则。应该有一种方法来缩短这一点,虽然...
另外,Apache mods需要启用:
型