我有三种环境:
env.com
env-uat.com
env-pre.com
所有三个页面都运行相同的代码。我希望env-uat.com和env-pre.com都能在htaccess中获得这个:
Header set X-Robots-Tag "noindex, nofollow"
这将有效地完全取消索引这些页面,包括PDF文件等。但我不想影响env.com。
如何才能为env-uat.com和env-pre.com以及NOT env.com添加标题X-Robots-Tag?
**更新**
从目前为止我发现的情况来看,你似乎只能做this之类的事情:
SetEnvIf Request_URI "^/privacy-policy" NOINDEXFOLLOW
Header set X-Robots-Tag "noindex, follow" env=REDIRECT_NOINDEXFOLLOW
但这使得它特定于PAGE。我希望它特定于DOMAIN。
答案 0 :(得分:3)
@Starkeen就在这里:
SetEnvIf host ^(env-uat\.com|host2\.com)$ NOINDEXFOLLOW
因此,您可以包含您希望参与此Env的域名,如下所示:
SetEnvIf host ^(env-uat|env-pre)\.com NOINDEXFOLLOW
然后你应该用这样的名字附上Env:
Header set X-Robots-Tag "noindex, follow" env=NOINDEXFOLLOW
不喜欢这样:
Header set X-Robots-Tag "noindex, follow" env=REDIRECT_NOINDEXFOLLOW
上面的一行将会看到Env它的名字是REDIRECT_NOINDEXFOLLOW而不是NOINDEXFOLLOW,这个问题X Robots Tag noindex specific page是不同的 那是关于与Request_URI和特殊情况的匹配。
因此,代码应如下所示:
SetEnvIf host ^(env-uat|env-pre)\.com NOINDEXFOLLOW
Header set X-Robots-Tag "noindex, follow" env=NOINDEXFOLLOW
答案 1 :(得分:2)
您可以使用Host
指令与SetEnvIf
标头匹配。
要使Header X-Robots-Tag
仅适用于特定主机(env-uat.com),您可以使用以下内容:
SetEnvIf host ^env-uat\.com$ NOINDEXFOLLOW
Header set X-Robots-Tag "noindex, follow" env=REDIRECT_NOINDEXFOLLOW
要使其可用于多个主机,您可以使用以下内容:
SetEnvIf host ^(env-uat\.com|host2\.com)$ NOINDEXFOLLOW
Header set X-Robots-Tag "noindex, follow" env=REDIRECT_NOINDEXFOLLOW