谁能告诉我如何从链接到主域的谷歌索引中删除子域。
假设我的域是 www.myweb.com,我的子域是 cdn.myweb.com。现在这里子域的文档根与主域相同。所以我不能使用robot.txt 来停止谷歌索引,因为它也会删除主域链接的索引。
我也在 google、bing 和 stackoverflow 上搜索,但我找不到这个问题的完美答案。有没有从你这边解决?
谁能告诉我如何从链接到主域的谷歌索引中删除子域。
假设我的域是 www.myweb.com,我的子域是 cdn.myweb.com。现在这里子域的文档根与主域相同。所以我不能使用robot.txt 来停止谷歌索引,因为它也会删除主域链接的索引。
我也在 google、bing 和 stackoverflow 上搜索,但我找不到这个问题的完美答案。有没有从你这边解决?
为此,您可以使用动态 robots.txt。像这样的东西...
httpd.conf (.htaccess):
RewriteRule /robots\.txt$ /var/www/myweb/robots.php
机器人.php:
<?php
header('Content-type: text/plain');
if($_SERVER['HTTP_HOST']=='cdn.myweb.com'){
echo "User-agent: *\n";
echo "Disallow: /\n";
}else{
include("./robots.txt");
}
我正在使用 nginx,并且在同一个服务器块中有多个子域。我希望将www子域包含在 google 的索引中,并将其余子域排除在外。
首先,在我的 nginx 配置的服务器块中,我添加了以下内容以根据域在 /robots.txt 提供 2 个不同的文件。
location ~ /robots.txt {
if ($host = 'www.example.com') {
rewrite ^/robots\.txt /robots.www.txt last;
}
}
然后在我网站的根目录下,有以下2个文件:
# Do not crawl subdomain
User-Agent: *
Disallow: /
User-agent: *
Disallow:
首先是添加 robots.txt,但在我的情况下,因为我的页面已经被 CDN 子域编入索引,所以对于机器人来说为时已晚。我发现最好的方法是转到 Google 网站管理员工具,添加我的 cdn 域 ( cdn.mysite.com )。然后转到 Google index -> Remove URLs 并删除/ url。过了几天才生效。