.htaccess - 如何根据环境变量设置自定义标头?

时间:2014-11-05 10:37:20

标签: apache .htaccess if-statement

如何使用If / Else指令根据environement变量通过.htaccess设置自定义标头?

#Refresh-page
<If "%{ENV:DOCUMENT} == 'loading'">
    Header set Refresh "3"
</If>

我正在尝试使用Apache 2.4文档中描述的语法

http://httpd.apache.org/docs/2.4/mod/core.html#if

TEST 1

根据anubhava的回答

RewriteCond %{ENV:DOCUMENT} ^widget$
RewriteRule ^.* - [E=REFRESH:1]

#refresh page
Header set Refresh "3" env=REFRESH

RewriteCond %{ENV:REFRESH} ^1$
RewriteRule ^.* loading.html [L]

1 个答案:

答案 0 :(得分:1)

将您的env变量更改为存储0或1,然后您可以像这样使用Header set

您可以使用:

# set DOCUMENT=widget (remove if you are already setting this)
SetEnvIf Host ^ DOCUMENT=widget

# set isDoc=1 if DOCUMENT == widget
SetEnvIf DOCUMENT widget isDoc

# set header only if isDoc == 1
Header set Refresh "3" env=isDoc
相关问题