【发布时间】:2016-05-29 16:59:02
【问题描述】:
我必须根据原始 apache 服务器上收到的请求将请求重定向到 2 个不同的服务器(服务器 A 和服务器 B)。
Server-A 也是另一个 apache 服务器,Server-B 是 weblogic 服务器。我正在使用 weblogic 代理插件指令来重定向对 Server-B 的请求。因此,只有上下文为 /console 或 /mywlsapp 的请求才应重定向到 weblogic 服务器。所有其他请求都应重定向到 Server-A。
我尝试使用 ReWrite Cond 排除 WLS 上下文。但它没有用。
这是我的重写规则。你能帮我解决这个问题吗?
RewriteCond %{REQUEST_URI} !^/console/
RewriteCond %{REQUEST_URI} !^/mywlsapp/
RewriteCond %{HTTP_HOST} ^mycustomapp\.mycompany\.com:7090 [OR]
RewriteCond %{HTTP_HOST} ^http://mycustomapp\.mycompany\.com:7090
RewriteRule ^(.*) http://Server-A.mycompany.com/$1 [P]
<Location /console>
WLSRequest On
SetHandler weblogic-handler
WebLogicHost Server-B
WebLogicPort 7110
</Location>
<Location /mywlsapp>
SetHandler weblogic-handler
WebLogicHost Server-B
WebLogicPort 7112
</Location>
【问题讨论】:
-
“我尝试使用 ReWrite Cond 排除 WLS 上下文。但没有成功。” - 这意味着example.com/console 也被重定向到服务器A?
标签: apache .htaccess mod-rewrite