如何使用robots.txt禁止仅为我的子域进行爬网?

如果我想要我的主要网站在search引擎上,但没有子域是,我应该只是把“禁止所有”robots.txt子目录的目录? 如果我这样做,我的主域名仍然可以抓取?

robots.txt文件需要进入您的web服务器的顶层目录。 如果你的主域和每个子域在不同的虚拟主机上,那么你可以把它放在每个子域的顶层目录中,

User-agent: * Disallow: / 

robots.txt所在的位置取决于您访问特定网站的方式。 给定一个URL

  http://example.com/somewhere/index.html 

抓取工具会丢弃域名右侧的所有内容,并追加robots.txt

 http://example.com/robots.txt 

因此,您需要将robots.txt放置在example.com的DocumentRoot指令指向的目录中,并且不允许访问/您需要的某处

 User-agent: * Disallow: /somewhere 

如果你有子域名,你可以像访问它们一样

 http://subdomain.example.com 

而你想禁止访问整个子域名,那么你需要把你的robots.txt放在子域名的DocumentRoot指令指向的目录中。

你必须把它放在你的根目录下,否则将不会被find。

  1. 你需要把robots.txt放到你的根目录下

  2. Disallow规则不是 domian /子域特定的,将适用于所有的url

例如:让我们假设您使用的是一个sub.mydomain.com和mydomain.com(都链接到相同的FTP文件夹)。 对于此设置,如果您设置了Disallow:/ admin / rule,则所有的URL sub.mydomain.com/admin/和mydomain.com/admin/都将被禁止。

但是,如果sub.mydomain.com实际上并没有链接另一个站点(也是另一个ftp文件夹),那么你需要创build另一个robots.txt并将其放在该文件夹的根目录下。