我将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)
抱歉,这很可能是不可能的。一般规则是每个子域都被单独处理,因此都需要 robots.txt 文件。
通常子域是使用子文件夹实现的,其中 url 重写就地进行映射,您希望在其中跨子域共享单个 robots.txt 文件。这里有一个关于如何做到这一点的很好的讨论:http : //www.webmasterworld.com/apache/4253501.htm。
但是,在您的情况下,您希望每个子域都有不同的行为,这将需要单独的文件。