【发布时间】:2020-03-30 18:52:48
【问题描述】:
我有 Apache 配置,我需要在其中拆分包含虚线子域的 http 主机域,并在代理传递或重写规则中使用这 3 个匹配组构建新路径。
示例网址:
- kube-test-selfservice.example.com/app/
- kube-staging-selfservice.example.com/app2/
需要代理到:
- balancer://kubernetes/test/selfservice/app/
- balancer://kubernetes/staging/selfservice/app2/
此示例中的 test 和 selfservice 在这些值发生变化时被捕获,这一点很重要。 kube 可以硬编码来区分这个主机。
我目前只有基本的代理设置,已经尝试过多次正则表达式重写,但由于我对 apache 不是很熟悉,所以希望得到一些关于这方面的建议。
<VirtualHost *:443>
ServerName example.com
ServerAlias *.example.com
ProxyRequests Off
ProxyPreserveHost On
AddDefaultCharset Off
<Proxy "balancer://kubernetes">
BalancerMember http://192.168.1.244:30001 route=node1 timeout=600
</Proxy>
ProxyPass / "balancer://kubernetes/"
ProxyPassReverse / "balancer://kubernetes/"
</VirtualHost>
【问题讨论】:
标签: apache mod-rewrite httpd.conf mod-proxy