正常に動作する ProxyPass ajp ルールを正常に作成しましたが、ip-whitelist を使用して特定の URL のアクセスを制限したいと考えています。つまり、誰かがホワイトリストにない IP から来た場合、リクエストはプロキシパスされるべきではありません (そして、理想的には、ある種のアクセス拒否が発行されるべきです)。
プロキシを渡すマシンを制御できないため、そのマシンの構成に ip-whitelist を配置できません。そのため、proxypass ルールを持つ同じマシンでこれを構成しようとしています。
リクエストがまだプロキシパスされているため、「Allow from」ルールを使用して <Location /path> を定義しても機能しません。これは単に、proxypass ルールが location-rule より優先されることを意味していると思います。
リモートアドレスに応じて環境変数を設定することで回避しようとしました(その場合、非ホワイトリスト IP を存在しない URL にプロキシすることができるためです。きれいではありませんが、目標を達成することができます)が、proxypass のようですルールは環境変数では機能しません。これと同じくらい簡単なもの:
SetEnv custom_proxypath=/
ProxyPass %{ENV:custom_proxypath} ajp://10.50.40.21:8009/
ProxyPassReverse %{ENV:custom_proxypath} ajp://10.50.40.21:8009/
動作しません。その間
ProxyPass / ajp://10.50.40.21:8009/
ProxyPassReverse / ajp://10.50.40.21:8009/
完璧に動作します。
私には選択肢がありません。他の誰かがこれにアプローチする方法を提案していますか?