现在我们现有的网站已经排名很高,所以我也想让Google幸福。我一直在阅读Google的Making AJAX Applications Crawlable,并且了解我必须通过_escaped_fragment_为搜寻器提供相同的内容。
问题
我想使用Umbraco开发这个网站,它已经提供了SEO友好的URL。即:
> http://www.domain.com/about-us.aspx
> http://www.domain.com/about-us/our-team.aspx
但问题是,我没有一个简单的方法实现_escaped_fragment_没有黑客Umbraco核心(至少这是我的知识),并使用解决方案(答案)我已经发布下面也将保持用户没有Javascript高兴。双赢局面?你告诉我! =)
更新
昨天有一位来自另一位用户的回答(现已删除),建议Google不再使用_escaped_fragment_方法,并建议将其忽略。这是真的? Google会真正运行AJAX来查看内容吗?
谢谢
马可
解决方法
我有一个想法这个问题和思想 – 为什么不以旧的方式创建网站,实际页面和一切,但然后执行以下步骤。
>使用jQuery拦截主页上的所有内部链接,并在window.location.pathname之前加上一个散列(#),从而触发hashchange事件。 (参见步骤3)
>在除首页之外的所有网页上添加javascript重定向,将网页重定向到首页,但将window.location.pathname附加到散列(#)后面。例如,Google抓取时间为http://www.domain.com/about-us.aspx,但当用户访问该页面时,系统会将其重定向到http://www.domain.com/#/about-us.aspx
>在首页,使用jQuery BBQ或类似的插件来侦听hashchange事件,包括当页面加载时,以便可以加载动态内容。 Umbraco可以配置为基于请求是否是AJAX请求来提供部分页面或整个页面内容。
这样,没有Javascript的用户将拥有一个完整的(半好看的)网站,Google将抓取所有的网页没有任何问题,但用户使用Javascript将永远留在首页 – 和一个很酷的概念, Web应用程序而不是网站将完成。