2012-08-09 130 views
0

我有一个asp.net .aspx页面(比如fruits.aspx页面),其中列出了所有的水果(苹果,香蕉,芒果等)与缩略图,标题并链接到每个水果的相应详细信息页面。现在,借助XSLT和用户控制,借助反手代码从XML中检索所有这些数据。SEO:从数据库检索数据和URL,抓取和索引

现在,由于每个水果的详细信息页面的数据和URL都不是静态存在于此页面上,因此根据我的知识它不会被抓取和编入索引。

是否有解决方法,我可以做,使每个水果的详细信息页面爬网和索引。

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

+0

无论这些URL是从后面的代码(动态地)还是硬编码到HTML中都没有关系。搜索引擎只会看到包含URL的HTML。它不知道或关心它是如何产生的。 – 2012-08-09 17:13:14

+0

您能否再次验证一下。你的意思是说,搜索引擎在加载所有数据后会看到浏览器中显示的页面,而不是显示在我的应用程序目录中的原始页面,该页面不包含任何数据,而是由代码后面填充的占位符? ? – 2012-08-09 17:29:04

+0

正确。搜索引擎无法看到您的ASPX文件,因为它位于您的服务器上 - 它们只能看到生成的HTML。如果你从你的网络浏览器做了一个“查看源代码”,你会看到同样的结果。 – 2012-08-09 17:32:28

回答

1

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

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

0

然后没有办法做到这一点。您要索引的每个页面都必须具有唯一的URL。生成页面时,只需生成一个唯一的URL。带上您的查询参数并将它们粘贴到脚本名称的末尾。

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

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

+0

“如果URL看起来像是由数据库支持,那么搜索引擎不太可能将所有内容都编入索引”,但我肯定希望看到一些证据,因为我不相信这是真的。 – 2012-08-09 17:11:41

+0

制作一个无限数量的页面的数据库很容易。如果搜索引擎检测到他们正在抓取大量参数,那么搜索引擎将会深入索引一个网站。以网上商店为例,我可以使用查询参数按颜色,大小和品牌组织产品。如果引擎看到一堆查询参数都会导致类似的内容,那么它的索引就会更少。如果页面按静态外观组织,它会假设这是所有真实的静态内容,并且会在停止索引时设置较高的阈值。 – 2012-08-09 17:17:19

+0

这与上面的答案并不是一回事,如果看起来一个网站的“目录”数量接近无限,就会发生*确切*相同的事情。 – 2012-08-09 17:20:33