阻止来自开发服务器和静态资产域的机器人/蜘蛛

阻止来自开发服务器和静态资产域的机器人/蜘蛛

我们运行 apache(在 Windows 上)和 NGINX(在 CentOS 上)开发服务器。我遇到的问题是,Google 不知怎么地一直设法获取开发地址并对其进行索引(可能是从 Chrome 地址栏中获取的?)有没有办法在服务器级别阻止来自机器人/蜘蛛的所有流量,然后再求助于每个站点中的单独 robots.txt 文件或仅密码访问?

一个相关的问题是在实时环境(CentOS 上的 NGINX)中,我们使用静态资产域来提供图像和 js 等,同样,Google 已在其搜索结果中对其进行了索引,有没有办法阻止这种情况?

答案1

首先,您应该在域的根目录中提供一个有效的 robots.txt 文件。这是要求 Google 和其他合法网络爬虫不要浏览您的网站的常用方法。

使用 nginx 等可以很容易地禁止选定的用户代理:

if ($http_user_agent ~ (Googlebot|bingbot|whatever) ) {
    return 403;
}

您可以将此代码放在单独的文件中,并将其包含在每个server块中。

相关内容