【问题标题】:Allow search engine to crawl usernames [closed]允许搜索引擎抓取用户名 [关闭]
【发布时间】:2011-02-13 11:39:04
【问题描述】:

我有一个网站,用户可以在其中输入他们的个人资料并用密码保护某些详细信息。我希望搜索引擎抓取配置文件的“未受保护”部分(因用户而异)。与在 facebook 中输入用户姓名类似,他们的 Facebook 个人资料会出现在搜索结果中。我是否需要做任何特别的事情来确保机器人不会爬取受密码保护的部分,但仍会爬取(始终公开的)用户名? 我不确定这是否是一个问题,但我想更新我的 robots.txt 以允许这样做。

另外,我如何确保机器人可以使用用户名(以安全的方式)?我是否必须创建一个包含名称列表的单独目录,还是有更好的方法?

感谢您的建议

【问题讨论】:

    标签: asp.net passwords bots robots.txt


    【解决方案1】:

    搜索引擎只会索引匿名用户看到的内容。如果您还没有,我会创建一个列表页面来浏览您只显示您想要的数据的用户配置文件。这可确保您拥有的每个 userProfile.aspx?uid=XXXXXX 都存在一个链接。搜索引擎蜘蛛将无法查看受密码保护的任何数据。

    我还会添加一个站点地图,以确保搜索引擎蜘蛛能够访问列表页面。不要以为 Google 会神奇地找到您的所有页面,尽管它们通常会根据指向您的内容的链接找到。向 Google 提交站点地图。

    编辑站点地图和搜索结果
    为了让蜘蛛抓取搜索结果,我会在站点地图中指定一个条目,将蜘蛛指向显示所有内容的搜索结果页面(例如 search.aspx?param=all)。

    【讨论】:

      【解决方案2】:

      你不需要做任何事情。只要您没有在 robots.txt 上明确禁止,搜索机器人将无法访问您的受保护网页,但它们可以毫无问题地访问公共内容

      【讨论】:

      • 嗨。我的数据(包括用户名)是从一页(userProfile.aspx?uid=XXXXXX)的数据库中动态加载的。它如何获得网站上的用户名列表?
      • 如果您的网站上有指向用户个人资料的链接,那么 google 就会找到他们。例如这个网站,在这条评论的右边有一个指向我的个人资料的链接,所以谷歌会找到它。
      • 啊,有道理。我的网站的问题是这些链接不像这些链接是永久的。当用户请求搜索时,它们来来去去。我是否必须创建一个包含所有用户的目录,或者这对搜索引擎来说像是垃圾邮件?
      • 我无法想象一个拥有用户个人资料的网站,但除了搜索页面外,任何地方都没有指向个人资料的链接。也许你在那里有问题。您的公共页面上应该有指向个人资料的链接
      • 同意。除非您在显示全部的站点地图中指定默认搜索结果列表,否则蜘蛛不会看到搜索请求后面的任何列表。例如,search.aspx?param=all .
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多