0

特定の HTTP ヘッダーが送信された場合、環境変数を設定しようとしています。

だから私は詳細を説明するいくつかの異なる方法を試しました

Header set MY_HTTP_HEADER "1"

# tests with with SetEnvIf
SetEnvIf %{HTTP:MY_HTTP_HEADER} ^1$ THE_ENV=ok
SetEnvIf MY_HTTP_HEADER ^1$ THE_ENV=ok
SetEnvIf %{MY_HTTP_HEADER} ^1$ THE_ENV=ok

# tests with RewriteRule
RewriteCond %{HTTP:MY_HTTP_HEADER} ^1$
RewriteRule .* index.php [L,E=THE_ENV:ok]

RewriteCond MY_HTTP_HEADER ^1$
RewriteRule .* index.php [L,E=THE_ENV:ok]

上記のすべてのコードが機能しないため、確かに見逃したことがあります。

編集
正しいものはSetEnvIf MY_HTTP_HEADER ^1$ THE_ENV=ok@anubhavaが指摘したように、ヘッダーを同じ.htaccessに設定すると機能しないため、このヘッダーを使用してCURLで実際のページを呼び出す別のページを作成しましたcurl_setopt($curl,CURLOPT_HTTPHEADER,array('MY_HTTP_HEADER: 1'));

4

1 に答える 1