IHS 和 WAS 插件:绕过插件和反向代理到另一个后端的推荐方法
IHS & WAS Plugin: Recommended approach to bypass the plugin & reverse proxy to another backend
我需要为某些与 WAS 插件处理的内容重叠的 URL 配置反向代理。这些特定的请求应该转发到其他系统。
现在至少有2个选项:
RewriteRule ... [P,L]
- 它利用了 mod_rewrite 优先于 WAS 插件 的事实
SetEnvIf Request_URI ... skipwas=1
+ ProxyPass ...
- 明确告诉 WAS 插件忽略某些 URL,但它至少需要 2 个指令(因此配置更复杂)
据我所知,通常建议避免使用 mod_rewrite 除非确实需要,因为它在许多情况下是一种矫枉过正的做法,并且可能会提供稍差的性能。
考虑到这一点,对于上述情况,推荐的方法是什么?
我更喜欢#2,因为它更明确。同事很容易错过 RewriteRule 中的单个 'P'。它还受到 mod_rewrites 不将配置合并到虚拟主机的异常默认设置的影响。
最后,如果您使用#1,您还需要通过编写 ProxyPass 或使用 <Proxy>
块来定义 mod_proxy“worker”,否则您将无法重新使用连接。
我需要为某些与 WAS 插件处理的内容重叠的 URL 配置反向代理。这些特定的请求应该转发到其他系统。
现在至少有2个选项:
RewriteRule ... [P,L]
- 它利用了 mod_rewrite 优先于 WAS 插件 的事实
SetEnvIf Request_URI ... skipwas=1
+ProxyPass ...
- 明确告诉 WAS 插件忽略某些 URL,但它至少需要 2 个指令(因此配置更复杂)
据我所知,通常建议避免使用 mod_rewrite 除非确实需要,因为它在许多情况下是一种矫枉过正的做法,并且可能会提供稍差的性能。
考虑到这一点,对于上述情况,推荐的方法是什么?
我更喜欢#2,因为它更明确。同事很容易错过 RewriteRule 中的单个 'P'。它还受到 mod_rewrites 不将配置合并到虚拟主机的异常默认设置的影响。
最后,如果您使用#1,您还需要通过编写 ProxyPass 或使用 <Proxy>
块来定义 mod_proxy“worker”,否则您将无法重新使用连接。