AJAX网页如何实现SEO友好
在WEB网页上应用AJAX技术可以提高用户体验,但是对于SEO却不够友好,因为搜索引擎不会执行JS,而AJAX网页的内容都是动态生成(即网页展示的内容都是在浏览器端通过JS动态生成的)。既要保留AJAX又要利于搜索引擎收录,应该如何做到两者的兼顾呢?
搜索引擎收录网页,是通过机器蜘蛛抓取网页HTML源代码,并从中解析网页URL或网页内容。因此每个AJAX网页应分配URL,每个AJAX网页中必须含有a超链接标签,使用href属性标记各页面URL,使搜索引擎识别到相应URL。同一个URL,若是蜘蛛抓取应输出完整网页内容,若是Ajax调用则输出相应格式的返回数据。这就是Quickling技术。
对于单页面应用一般是通过URL中的“#”来区分不同的UI,但搜索引擎不会识别锚点,这种情况可以考虑使用History API,通过如下js调用改变浏览器地址栏,根据网站调用不同而改变成对应URL(注意:只能将当前浏览器URL改为同域URL)。
window.history.pushState(state object, title, url);
另外,采用PhantomJS可以获取AJAX网页的HTML(包括脚本动态生成的内容),因此在不改变现有AJAX网页的基础上,通过判断是否搜索引擎访问,调用PhantomJS获取Ajax网页HTML内容返回给搜索引擎。PhantomJS官网:http://phantomjs.org/。