SetEnv
環境変数を設定するので、で利用できるはずですが、%{ENV:clubhub_path}
試してみましたが、機能していないようです。
ただし、環境変数はRewriteRule
s で設定できるため、次のように記述できます。
RewriteRule ^ - [E=clubhub_path:clubhub-ui]
RewriteCond
このルールはすべての URL に一致しますが、次のように sで使用できる環境変数を設定するだけに書き換えません。
RewriteCond %{ENV:clubhub_path} ^clubhub-ui$
php に到達すると、これはまったく同じように見えるはずです。($_SERVER
スーパーグローバル、またはgetenv()
)
アップデート
%{ENV:variable}
ただし、 の右側でyour を使用することはできませんRewriteCond
。あなたがApache 2.4を使用していて、ap_exprを使用できる場合、これを行う唯一の方法だと思います
RewriteCond expr "! '%{REQUEST_URI}' -strcmatch '/%{ENV:clubhub_path}/media/*'"
私のテスト環境では、これはあなたが望むことをしているようです (「/clubhub-ui/media」の URL の否定的な一致ですが、apache2.4 はまだかなり新しいです。ホストされています。
おそらく、パラメーターとスクリプトを使用した RewriteMap でアイデアを実装できます。prg