使用robots.txt在子域上禁用或取消索引

Kir*_*met 13 robots.txt

我将dev.example.com和www.example.com托管在不同的子域中.我希望抓取工具删除dev子域的所有记录,但保持它们www.我使用git来存储两者的代码,所以理想情况下我希望两个站点都使用相同的robots.txt文件.

是否可以使用一个robots.txt文件并将其从dev子域中排除?

Chr*_*vén 28

您可以使用Apache重写逻辑robots.txt在开发域上提供不同的服务:

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^dev\.qrcodecity\.com$
    RewriteRule ^robots\.txt$ robots-dev.txt
</IfModule>
Run Code Online (Sandbox Code Playgroud)

然后创建一个单独的robots-dev.txt:

User-agent: *
Disallow: /
Run Code Online (Sandbox Code Playgroud)


tod*_*000 5

抱歉,这很可能是不可能的。一般规则是每个子域都被单独处理,因此都需要 robots.txt 文件。

通常子域是使用子文件夹实现的,其中 url 重写就地进行映射,您希望在其中跨子域共享单个 robots.txt 文件。这里有一个关于如何做到这一点的很好的讨论:http : //www.webmasterworld.com/apache/4253501.htm

但是,在您的情况下,您希望每个子域都有不同的行为,这将需要单独的文件。