Apache 在开发和登台服务器上设置X-Robots-Tag

Apache 在开发和登台服务器上设置X-Robots-Tag,apache,.htaccess,http-headers,conditional,setenv,Apache,.htaccess,Http Headers,Conditional,Setenv,将其添加到旧系统中,并尝试在.htaccess文件中执行此操作 # Prevent search engine indexing on dev sites: SetEnvIf Host myliveserver\.com$ isproduction Header set X-Robots-Tag "noindex, nofollow, noarchive" env!=isproduction 使用mod_setenvif在Apache 2.2.22上运行 得了一个可怕的500分。 如果我删除

将其添加到旧系统中,并尝试在.htaccess文件中执行此操作

# Prevent search engine indexing on dev sites:
SetEnvIf Host myliveserver\.com$ isproduction 
Header set X-Robots-Tag "noindex, nofollow, noarchive" env!=isproduction
使用mod_setenvif在Apache 2.2.22上运行

得了一个可怕的500分。 如果我删除条件
env=i生产
它正在运行。
关于条件从句,我遗漏了什么?

状态代码有两种可能性

  • mod_标头未启用
语法:Header[condition]set | append | merge | add | unset | echo | edit Header[value][replacement][early | env=[!]变量]

因此,您的头指令应该是

Header set ... env=!isproduction
啊。。就在那里…
=vs
=

NOT应用于变量,而不是等式。

mod_标头已启用。我从Apache文档中获得了语法。“我只是对我的例子有什么问题感到困惑,我相信它遵循了这个语法。”lonkoenig看答案的第二部分。