2016-09-20 7 views
1

正規表現で必要な検証の一部として、作成したローカル変数を使用しようとしています。これまでの私のコード:正規表現内でENV変数を使用

RewriteCond %{HTTP_REFERER} .*redirect=(.*?)(?:&.*|$) 
RewriteRule .* - [E=REDIRECT:%1] 

RewriteCond %{THE_REQUEST} \/(.*?)(?:\/-*|\s) 
RewriteRule .* - [E=TEST_IDEA:%1] 

RewriteCond %{ENV:REDIRECT} =%{ENV:TEST_IDEA} ###This doesn't work as '=' takes %{ENV:TEST_IDEA} lexicographically. 
RewriteRule .* - [F] 

接線点として、私はリファラと共通でURLを共有する何かのためのGETメソッドの両方あることを検証しようとしています。

答えて

1

あなたは、リテラルRewriteCondexprに最初の引数を渡す場合は、ap_expr comparisonsを使用することができます。

RewriteCond expr "%{ENV:REDIRECT} = %{ENV:TEST_IDEA}" 
RewriteRule^- [F] 
+0

おかげで、魅力のように働きました! – abullrich