我遇到的最常见的技术SEO问题之一是无意地索引开发服务器、登台站点、生产服务器或您使用的其他名称。
出现这种情况的原因有很多,从人们认为没有人会把这些领域联系起来到技术上的误解。网站的这些部分通常本质上是敏感的,把它们放在搜索引擎的索引中有暴露计划中的活动、商业情报或私人数据的风险。
如何判断dev服务器是否被索引
您可以使用谷歌搜索来确定您的登台站点是否被编入索引。例如,要定位一个登台站点,你可以在谷歌中搜索site:domain.com并查看结果,或者添加像-inurl:www这样的操作符来删除任何www.domain.com的url。你也可以使用第三方工具,如SimilarWeb或SEMrush来查找子域名。
可能还有其他包含登录门户或不供公众使用的信息的敏感区域。除了各种谷歌搜索运营商(也被称为谷歌Dorking)之外,网站往往会在robots.txt文件中屏蔽这些区域,确切地告诉你不该看的地方。告诉人们哪里可以找到你不想让他们看到的信息会有什么问题呢?
您可以采取许多措施,使访问者和搜索引擎远离dev服务器和站点的其他敏感区域。以下是一些选择:
好:HTTP身份验证
您希望将任何内容排除在索引之外的内容都应该包括服务器端身份验证。要求身份验证访问的首选方法是将用户和搜索引擎。
好:IP白名单
只允许已知的IP地址——比如那些属于你的网络,客户端等等——是保护你的网站的另一个重要步骤,确保只有那些需要看到网站区域的用户才能看到它。
也许:robots.txt中的Noindex
txt中的Noindex不是官方支持的,但是它可以从索引中删除页面。我使用这种方法的问题是,它仍然告诉人们他们不应该看的地方,它可能不会永远工作,或对所有的搜索引擎。
我说这是一个“可能”的原因是,它可以工作,实际上可以与不允许的机器人结合。txt,不像其他一些方法,如果不允许爬行就无法工作(我将在本文后面讨论)。
也许:Noindex标签
在robots元标记中使用noindex标记,或者在HTTP头中使用x – robots标记,都可以帮助将您的页面排除在搜索结果之外。
我看到的一个问题是,这意味着搜索引擎要抓取更多的页面,这会消耗你的抓取预算。我通常看到在robots.txt文件中也有不允许时使用此标记。如果你告诉谷歌不要抓取页面,那么他们不会尊重noindex标签,因为他们看不到它。
另一个常见的问题是,这些标记可能被应用在staging站点上,然后在启动时留在页面上,从而有效地从索引中删除该页面。
也许:规范
如果你的登台服务器上有一个规范的设置指向你的主网站,基本上所有的信号都应该被正确地合并。内容可能不匹配,这可能会导致一些问题,与noindex标记一样,谷歌将不得不抓取其他页面。网站管理员也倾向于在robots.txt文件中添加一个不允许,因此谷歌再次不能爬行页面,也不能尊重规范,因为他们看不到它。
当从生产服务器迁移到活动服务器时,您还可能面临这些标记没有更改的风险,这可能会导致您不想显示的标记成为规范版本。
坏处:什么都不做
不做任何事情来阻止对登台站点的索引,通常是因为有人认为没有人会链接到这个区域,所以没有必要做任何事情。我也听说谷歌会“找出它”-但我一般不会信任他们与我的重复内容问题。你会吗?
不好的地方:禁用robots.txt
这可能是人们试图阻止staging站点被编入索引的最常见的方法。在机器人中使用不允许指令。txt,你是在告诉搜索引擎不要抓取页面——但这不会阻止他们索引页面。他们知道一个页面存在于那个位置,并且仍然会在搜索结果中显示它,即使他们不知道那里到底有什么。它们有来自链接的提示,例如,页面上的信息类型。
当谷歌索引一个被阻止爬行的页面时,你通常会在搜索结果中看到以下消息:“由于该站点的robots.txt,对该结果的描述不可用。”
如果您还记得前面的内容,这个指令还将阻止谷歌看到页面上的其他标记,比如noindex和canonical标记,因为它完全阻止它们看到页面上的任何内容。在网站上线时,你也可能会忘记删除这个禁令