【问题标题】:SEO: Making data and URLs retrieved from database, crawlable and indexableSEO:使从数据库中检索到的数据和 URL 可抓取和可索引
【发布时间】:2012-08-09 16:28:35
【问题描述】:

我有一个 asp.net .aspx 页面(比如 fruits.aspx 页面),其中列出了所有水果(苹果、香蕉、芒果等),并带有一个缩略图、标题和链接,这些链接指向每个水果各自的详细信息页面。现在,所有这些数据都是在 XSLT 和用户控件的帮助下,借助反手代码从 XML 中检索出来的。

现在,由于每个水果详情页的数据和 URL 都不是静态的,据我所知,它不会被抓取和索引。

是否有一种解决方法可以让每个水果的详细信息页面都被抓取并编入索引。

如果我只有像“?var=value”这样的动态 URL,我可以使用 URL 重写通过静态/动态转换来解决它。但是这里的 URL 本身并不存在,而是从后面的代码生成的。

【问题讨论】:

  • URL 是从后面的代码中(动态地)放在那里还是在 HTML 中硬编码都没有关系。搜索引擎只看到包含 URL 的结果 HTML。它不知道也不关心它是如何生成的。
  • 您能否再次验证一下。你的意思是说,搜索引擎看到页面在加载所有数据后出现在浏览器中,而不是原始页面出现在我的应用程序目录中,它不包含数据,但占位符是从后面的代码中填充的? ?
  • 正确。搜索引擎无法看到您的 ASPX 文件,因为它位于您的服务器上 - 他们只能看到生成的 HTML。如果您从网络浏览器执行“查看源代码”,您会看到同样的结果。
  • 谢谢先生!这个答案是我的问题。再次感谢你。

标签: asp.net seo dynamic-url


【解决方案1】:

搜索引擎不会看到aspx 文件,因为它位于您的服务器上;相反,它们会看到您的网络浏览器所做的相同事情:生成的 HTML 输出。

这意味着您所说的参数被搜索引擎正确地看到和索引。

【讨论】:

    【解决方案2】:

    那就没有办法了。您要编入索引的每个页面都必须有一个唯一的 URL。生成页面时,只需生成一个唯一的 URL。获取查询参数并将它们粘贴到脚本名称的末尾。

    例如,假设使用 ?fruit=banana 作为查询参数调用 fruits.aspx。您最好的选择是生成一个具有唯一静态 URL 的页面,例如使香蕉页面的链接看起来像 /fruits.aspx/fruit/banana。

    更好的是重写它以删除 .aspx。然后该站点看起来像所有静态内容,这对于索引来说甚至更好。如果一个 URL 看起来有数据库支持,那么搜索引擎就不太可能为所有内容编制索引。

    【讨论】:

    • “如果一个 URL 看起来像是由数据库支持,那么搜索引擎就不太可能索引所有内容”,我肯定希望看到一些证据,因为我不认为这是完全正确。
    • 很容易创建一个拥有无限页数的数据库。如果搜索引擎检测到他们正在抓取大量参数,则搜索引擎将不那么深入地索引站点。以在线商店为例,我可以使用查询参数按颜色、尺寸和品牌组织产品。如果引擎看到一堆查询参数都导致相似的内容,那么它的索引深度就会降低。如果页面是在静态目录中组织的,它会假设这都是真正的静态内容,并且会在停止索引时设置更高的阈值。
    • 这与上面的答案所说的不一样,在某种程度上,如果一个网站似乎有一个近乎-无限数量的“目录”。
    • 稍后会使用静态 URL。在带有查询参数的 Google URL 上,会通过查询参数规范化。他们试图找出哪些参数对内容很重要,哪些参数可以重新排序并产生相同的内容。这对 Google 来说需要更多的工作,并且花费更少的时间来抓取您的网站。 Bing 在查询参数处理方面不太复杂。没有查询参数的网址也有更高的点击率。
    • 1) 我高度怀疑这里的 OP 是否有足够的参数值来产生任何影响。 2)查看问题的cmets;无论如何,这实际上不是他在说的。他认为搜索引擎会看到“原始”的 ASPX,而不是生成的 HTML。
    猜你喜欢
    • 1970-01-01
    • 2014-03-08
    • 1970-01-01
    • 1970-01-01
    • 2018-08-11
    • 2020-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多