我坚持以下情况。
我在tomcat中部署了一个名为“foo”的应用程序。我在apache级别使用mod_proxy将请求从apache重定向到tomcat。下面是它的配置。
ProxyPass /foo https://dev.apprlc.com:8080/foo
ProxyPassReverse /foo https://dev.apprlc.com:8080/foo
我想在对应用程序进行一些维护时向用户显示维护页面。以下是配置。
RewriteCond /etc/apache/conf/MAINT -f
RewriteRule ^/foo$ /maintenance.html [R=302,L,NC]
这很好用。但是,我想维护一个我可以在维护期间使用的秘密URI。比如https://dev.webrlc.com/maint-test
。
为此,我做了以下配置。
RewriteCond /etc/apache/conf/MAINT -f
RewriteRule ^/foo$ /maintenance.html [R=302,L,NC]
RewriteCond /etc/apache/conf/MAINT -f
RewriteRule ^/maint-test$ /foo [PT]
这不起作用&我可以看到它非常明显。 /maint-test
将重定向到/foo
并且/foo
将重定向到/maintenance.html
,而不是从tomcat中获取/foo
应用程序。
有人可以帮我解决一下吗?真的很感谢你的帮助。
答案 0 :(得分:1)
添加P标志以使用反向代理。而不是将其指向/ foo,直接将请求发送到tomcat。
RewriteCond /etc/apache/conf/MAINT -f
RewriteRule ^/maint-test$ https://dev.apprlc.com:8080/foo [P]