[英]How to retrieve request URI in Apache virtual host configuration file on Redhat?
我在/etc/httpd/conf.d
下創建了一個Httpd虛擬主機配置文件,以在2台服務器之間實現負載平衡。 我的配置如下所示:
<VirtualHost *:8086>
ProxyRequests off
ServerName domain.com
<Proxy balancer://mycluster>
BalancerMember http://example1.com/b
BalancerMember http://example2.com/b
Allow from all
ProxySet lbmethod=byrequests
</Proxy>
<Location /balancer-manager>
SetHandler balancer-manager
</Location>
ProxyPass /balancer-manager !
ProxyPass /a/b balancer://mycluster/
</VirtualHost>
如果您看到上述配置,則說明我正在通過URL domain.com:8086/a/b
訪問負載均衡器。 我的要求是,當請求以domain.com:8086/a/b/c/d
出現時,其中c,d是動態值,我想將它們附加到我的BalancerMembers中。 即,它必須在http://example1.com/b/c/d
和http://example2.com/b/c/d
之間進行負載平衡。 我該怎么做呢?
始終將斜杠與目標匹配:
ProxyPass /a/b/ balancer://mycluster/
如果目標是balancer:// mycluster,則始終需要添加尾部斜杠,因為它實際上是balancer:// mycluster /,如果這是您的目標,則也需要在原點中添加尾部斜杠,因此ProxyPass / a / b /。 如果您不這樣做,則會遇到將不正確的uri分配到后端的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.