【问题标题】:Using robots.txt or another method to change the default page for Search Engines使用 robots.txt 或其他方法更改搜索引擎的默认页面
【发布时间】:2009-09-02 21:51:51
【问题描述】:

在用户进入我们的公司网站之前,我们向用户显示了一个快速的“网关”页面(仅一次)。此 Flash 页面为 default.aspx,由服务器作为默认页面。

问题是雅虎和其他 SE 从页面正文中提取文本,这恰好是 noscript 标记中的 Javascript/Flash 要求警告。

有没有办法使用 robots.txt 让所有搜索引擎都将 home.aspx 视为默认页面?

我并没有坚持使用 robots.txt 来执行此操作,因此如果有其他方法,请改为推荐。

我知道“网关”页面存在问题——尽管我反对这种做法,但这是来自“管理层”的请求。请提供除删除网关页面以外的解决方案。

谢谢!

【问题讨论】:

    标签: flash indexing seo


    【解决方案1】:

    如何使用 JavaScript 将“网关”显示为主页上的叠加层?

    您可以使用document.cookie 使其仅出现一次或(甚至更好)一些服务器端魔法(例如,为每个会话/cookie 添加适当的<script/> 一次)。

    使用该解决方案,您甚至可以使其在首次访问服务时出现,而与访问的页面无关(如果“管理层”想要的话)。

    【讨论】:

    • 我们希望网关页面仅在无 cookie 的用户直接键入域名时出现。覆盖的想法可能有效,但考虑到实现的复杂性(相当重的 cms),这将是一个昂贵的解决方案。
    【解决方案2】:

    如果“default.aspx”查看了 useragent 并在 useragent 是机器人的情况下将重定向发送到“home.aspx”怎么办?

    【讨论】:

    • 有没有可靠的方法通过用户代理字段来区分搜索引擎蜘蛛?
    • 本站收集不同机器人的用户代理:user-agents.org
    • 没有基于 User-Agent 的解决方案可以被认为是可靠的,但在您的情况下它是可以接受的。尤其是当您针对特定搜索引擎时。
    • 这个解决方案的最大问题是它违反了所有主要搜索引擎(谷歌、雅虎、微软)的网站管理员指南。因此,走这条路可能会导致处罚或彻底禁止 - 这无助于实现您的目标。
    【解决方案3】:

    机器人排除协议做了很多事情,但它没有规定指定您网站的主页。 (更多信息:http://janeandrobot.com/library/managing-robots-access-to-your-website)。

    有两种可能的解决方案适用于搜索引擎和您网站的客户。最好的选择是在标签中简单地添加一些文本来描述 Flash 动画的消息,并包含一个指向您主页的链接。通过这种方式,搜索引擎将能够了解该页面的内容,并获得指向您主页的链接。对于可能从 iPhone 访问但没有安装 Flash 选项的真实客户来说,这也是一个很好的解决方案。您需要为这些人提供一种机制来访问您的主页以及他们登陆的页面的一些上下文。

    第二个选项是实现上面 Michał Górny 的建议,将网关变成真正主页上的 javascript 覆盖。

    您还需要确保为您的页面创建了良好的标题标签和元描述标签。我看到许多 Flash 页面经常忘记这个关键步骤。

    您不想做的是检测搜索引擎机器人并为它们提供不同于您为客户提供的体验。这将违反针对 google、microsoft 和 yahoo 的网站管理员指南,并且可能会触发搜索引擎的自动质量检查,并可能导致某种处罚。

    Nathan Buggia(Microsoft Bing 技术布道者)

    【讨论】:

      【解决方案4】:

      您应该强制进行永久重定向(HTTP 状态代码 301),这样搜索引擎就不会索引主页。 Apache、nginx 和 lighttpd 可以为你做到这一点,我不知道 IIS。这是一个带有 apache 配置的示例(例如在虚拟主机部分或 .htaccess 中):

      BrowserMatch Googlebot searchengine=1
      RewriteEngine on
      RewriteCond %{ENV:searchengine} =1
      RewriteRule ^/$ /myrealhomepage/  [R=301,L]
      

      确实,您需要添加与机器人相对应的所有其他用户代理,例如 msnbot(显然仍由 bing 使用)以及您认为相关的任何其他用户代理。

      我认为最好避免将这种微调隐藏在您网站的网页中,而让网络服务器处理这将消耗更少的资源。

      【讨论】:

      • 谢谢,这将最接近我想做的事情。我正在处理 IIS。有没有可以看到列出的所有机器人用户代理的地方?
      • David 发布了一个指向 user-agents.org 的链接,这似乎是一个综合列表。由于没有可靠的机制来检测所有当前和未来的机器人,因此您应该只关注少数几个,我会说 google、yahoo、msn/bing,它们共同代表了 99% 的市场
      猜你喜欢
      • 2019-02-12
      • 2017-09-06
      • 1970-01-01
      • 2015-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-19
      相关资源
      最近更新 更多