我在托管MVC4网站的共享主机帐户上配置了多个主机名。我这样做是为了从这些多个主机名加载静态资源,以通过发出并行请求来获得一些速度。所有这些主机名都映射到IIS中的同一站点/应用程序。然后我们更改了静态资源的URL以从这些主机名加载它们。基本上,它就像从CDN加载(我们并没有真正使用CDN,只是让它并行加载。)
但是,我想阻止搜索引擎和其他抓取工具访问这些多主机名/子域。否则,它会将它们列在搜索列表中。
我想添加robots.txt,但这些域名正在使用相同的应用程序。所以我已经有robots.txt,这是我的主域名。
有关如何阻止抓取工具抓取这些额外主机名的任何想法?
答案 0 :(得分:2)
将以下规则添加到node。下的web.config中。
<rewrite>
<rules>
<rule name="Imported Rule 1" stopProcessing="true">
<match url="^robots\.txt$" ignoreCase="false" />
<conditions>
<add input="{HTTP_HOST}" pattern="^cdn\.yourdomain\.com$" />
</conditions>
<action type="Rewrite" url="/cdn.robots.txt" />
</rule>
</rules>
</rewrite>
答案 1 :(得分:2)
在Google网站站长工具中,您可以为“规范化”设置首选项。这是用于描述具有首选源的重复内容的术语(更准确地说,它指的是首选源本身)。 Google会在网站管理员工具的答案部分中对duplicate content和canonicalization上的政策进行讨论。
总结网页最简单/最好的方法是在网站站长工具网站设置中设置“首选域”,并使用rel="canonical"
在重复页面中设置链接元素,以指明您首选的SEO来源。
如果您希望http://www.example.com/dresses/greendress.html成为。{3}} 您的商家信息的规范网址,您可以指明要搜索 引擎添加一个属性为rel =“canonical”的元素 到非规范页面的部分。为此,请创建一个 链接如下:
<link rel="canonical" href="http://www.example.com/dresses/greendress.html">
规范链接并非特定于Google。它们在RFC 6596中定义,并且自2009年以来也被Yahoo和Bing支持。
关于链接关系类型,可以描述“规范” 非正式地作为作者的首选资源版本。更多 形式上,规范链接关系指定了首选的IRI 从一组返回上下文IRI内容的资源中 重复的形式。一旦指定,搜索引擎等应用程序 可以集中处理规范,并引用上下文 (参考)IRI可以更新以引用目标(规范) IRI。
设置规范链接不会阻止搜索引擎抓取重复的网页,但应确保正确分配您的网页排名和搜索链接(这确实是重要部分)。从理论上讲,GoogleBot和其他抓取工具最终应该确定哪个基本网址是真实内容,并且不应像您的“主要”网页那样经常或强烈地抓取您的重复内容。
答案 2 :(得分:0)
要避免此问题,建议您在一个子域中上传静态内容,并将所有CDN资源指向您的子域。然后使用robots.txt文件或使用Google网站管理员工具屏蔽您的子域名。