私は下のシナリオで立ち往生しています。Apacheリダイレクトクエリ
"foo"という名前のtomcatにアプリケーションをデプロイしました。 mod_proxyをApacheレベルで使用して、リクエストを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
はtomcatから/foo
アプリケーションをフェッチするのではなく、/maintenance.html
にリダイレクトされます。
解決方法を教えてもらえますか?本当に助けに感謝します。
私はそれを試しました。しかし、/ maint-testはまだ/maintenance.htmlにリダイレクトされています。 – NewLands
正確な設定を使いましたか? 2つのフラグ[P]と[PT]は異なります。上記の応答は、mod_proxyを使用してApacheからTomcatに要求を送信します。あなたが使った設定は、/ maint-test(apache)から/ foo(まだApache上)にリクエストを送ることです。 – nidhi
ええ、私は '[P]'を使いました。 – NewLands