我正在尝试阻止搜索引擎通过 SSL 版本的网站进行抓取,以防止内容重复和规范化问题。
我发现了以下精彩的文章: http://www.seoworkers.com/seo-articles-tutorials/robots-and-https.html
问题是,我正在使用 lighttpd,它似乎没有 RewriteCond 指令,将重写仅限于 SSL。
有人能建议这在 lighttpd 上是否可行,并提供一个片段吗?
提前致谢!
答案1
尝试这个:
$SERVER["socket"] == "a.b.c.d:443" {
...
$HTTP["host"] =~ "<yourhostname>" {
url.rewrite-once = ("^robots.txt$" => "robots_ssl.txt")
}
}
它url.rewrite-once
绝对应该位于$SERVER["socket"]
您的 SSL 部分中,并且仅在访问您的 SSL 主机时才应用。
url.rewirte-once 可以放置没有有条件的,但根据一些论坛的说法,它似乎不会一直起作用。
答案2
如果您至少拥有 1.4.19 版本,您应该能够使用条件配置,例如:
$HTTP["scheme"] == "https" {
url.rewrite-once = ("^robots.txt$" => "robots_ssl.txt")
}