11

ステートメントの aSetEnvに設定された値を使用する方法はありますか?RewriteRule

例:

SetEnv MY_SCRIPT myScript.php

rewriteEngine on
RewriteRule ^(.*)$  %{MY_SCRIPT} [L]
4

2 に答える 2

13

http://httpd.apache.org/docs/2.0/env.htmlによると、SetEnv はRewriteRule のに呼び出されます。したがって、RewriteRule ステートメントまたは RewriteCond ステートメントで SetEnv を介して設定された変数を使用することは不可能のようです。

一方、SetEnvIf の使用は RewriteRule のに呼び出されるため、そこに設定された変数は RewriteRule または RewriteCond ステートメントで使用できます。

したがって、次のようなものが機能するはずです。

SetEnvIf SERVER_PROTOCOL "HTTP.*" MY_SCRIPT=myScript.php
rewriteEngine on
RewriteRule ^(.*)$  %{ENV:MY_SCRIPT} [L]
于 2011-09-02T04:45:04.383 に答える
1

%{ENV:MY_SCRIPT}の代わりに使用し%{MY_SCRIPT}ます。

于 2009-11-24T10:18:52.890 に答える