我有一个网页,其动态加载一部分的内容通过阿贾克斯。我而言,这意味着内容不会被发现的搜索引擎。

告诉你什么是我的意思是,该网站是在 http://www.gold09.net 和动态的内容是在 /speakers.php -通常没有人会访问的第二链接,它只是载入的第一页。

我知道我可以告诉爬虫来读的 speakers.php 通过使用 sitemap.xml, 但然后我会得到的链接speakers.php 显示在搜索结果。

我想最终解决方案将是这样,如果有人请求 /speakers.php 它重他们的主页,而它可以让爬虫读取数据。

任何建议?

有帮助吗?

解决方案 3

更新:我所做的是:

创建另一个名为 viewSpeakers.php 的页面,其中包括带有标准页眉和页脚的 speakers.php 文件。这意味着,如果有人访问该网站,那么他们会看到一个模糊的页面。该页面的唯一链接位于 index.php 页面的HTML(通过javascript立即删除)和我的sitemap.xml中。

这样做的结果是搜索引擎抓取工具和禁用了javascript的用户可以看到有关扬声器信息的链接。启用了javascript的人获得了在同一索引页面上动态加载的数据的AJAXy优点,他们永远不必了解 viewSpeakers.php 页面。

我可以预见的唯一缺点是有人可能会通过搜索列表来到 viewSpeakers.php 页面,然后无法从找到返回该页面的链接的index.php 。问题并不是太多......

这是作为答案添加的,而不是编辑问题,因为它是解决此问题的一种方法。我仍然有兴趣知道是否有比这更好的方法。

其他提示

让的链接点的网页你想要索引到有一个真正的HREF的内容,但使用javascript拦截事件和"return false;"结尾。

nelson laquet说你需要提供回报:false;在您的页面上的每个锚点上,而不会忽略他们的href值[因为这对于像谷歌这样的屏幕阅读器来说非常重要]

如果你使用重写方法掩盖这个,那也很酷:
 在您的服务器端代码提供仅供您的javascript代码使用的参数,例如地址

index.php?ajaxpageneeded=page1

...

<body onload="ajaxloaderscript(<?=page1?>);" >
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top