apache 代理服务器和 rewritecond

apache 代理服务器和 rewritecond

Web 服务器和 Tomcat 服务器的组合。一切都在 https 下运行。

tomcat 服务器只能通过代理服务器访问。

我想将所有带有“my_module”的请求重写到 tomcat 服务器。(tomcatmodule.war)

代理服务器:10.10.10.10:8999 tomcat 服务器:11.11.11.11:8443

我如何设置我的 VirtualHost 以使用代理服务器来执行我的重写条件。

我尝试在我的

    <VirtualHost *.443>
    RewriteEngine on

    ProxyRemote "*" "https://10.10.10.10:8999"

        RewriteRule ^/my_module/(.*)  https://11.11.11.11:8443/tomcatmodule/$1 [P,QSA,L]

ProxyPassReverse /my_module/  https://11.11.11.11:8443/tomcatmodule/

尝试转发请求

example.com/my_module/api

这最终应该会调用 tomcat

https://11.11.11.11:8443/tomcatmodule/api

(通过代理服务器)

基础设施概述

答案1

未经测试,但你可以尝试一下

ProxyRequests On
ProxyRemote * https://10.10.10.10:8999
ProxyPass /my_module https://11.11.11.11:8443/tomcatmodule/
ProxyPassReverseCookiePath tomcatmodule/ /my_module
ProxyPreserveHost On

答案2

问题是我没有激活:

SSLProxyEngine on

另一个非常有用的提示是提高日志级别:

LogLevel debug rewrite:trace8

相关内容