如何使用robots.txt禁用镜像站点(在子域上)



我有一个网站说:

http://domain.com/

镜像站点

http://cdn.domain.com/

我不希望cdn被索引。我如何写robots.txt规则来避免cdn被索引而不影响我现有的robots.txt排除。

我现在的robots.txt不包括:

User-agent: *
Disallow: /abc.php

如何避免cdn.domain.com被索引?

User-agent: *
Disallow: /abc.php

在root .htaccess文件中添加以下内容

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^Amazon.CloudFront$
RewriteRule ^robots.txt$ robots-cdn.txt
然后创建一个单独的robots-cdn.txt:
User-agent: *
Disallow: /

当通过http://cdn.domain.com/robots.txt访问时将返回robots-cdn.txt文件的内容…否则重写将不会生效,而真正的robots.txt将生效。

这样,您就可以自由地将整个站点(包括.htaccess)文件与预期的行为镜像

更新:

  • HTTP_USER_AGENT这样做是因为Amazon在从任何位置查询时使用它。
  • 我已经验证了,它工作

如果代码库相同,则可以动态生成robots.txt并根据请求的(子)域更改其内容。

最新更新