当前位置:首页 > 技术积累 > 正文内容

AJAX网页如何实现SEO友好

竹林之风8年前 (2016-03-24)技术积累5441

        在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/


扫描二维码推送至手机访问。

版权声明:本文由久爱编程网发布,如需转载请注明出处。

本文链接:http://www.9icode.com/index.php/post/12.html

标签: ITSEOAjax
分享给朋友:

相关文章

如何解决Cookie和Ajax的跨域问题

如何解决Cookie和Ajax的跨域问题

        Cookie用来在浏览器端保存小文本信息,它的属性Domain和Path用来标识该Cookie在什么域和什么路径下有效。要使Cookie跨域如何...

Java相关的一些名词

Java相关的一些名词

Java语言:一种程序设计语言,版本号从1.0到1.4,从1.5起版本号变更为5、6、……;JDK版本号、Java平台版本号类同。Java平台:1998年12月发布JDK 1.2后,Java从与平台无关的语言变成Java 2平台,分为三个版...

通用基础表逻辑设计(三)——功能权限

通用基础表逻辑设计(三)——功能权限

概述        在一个应用系统中有多个用户,用户通常分为多种角色,每种角色的用户能够访问的页面、能够查看的数据或者能够执行的操作等各有不同,因此需要设计与实...

ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常问题解决

ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常问题解决

        ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常时,其中一个原因是:在已经重定向后又重定向。在ASP.NET中实现重定向有以下几...

ASP.NET中报“无法在已发送HTTP标头之后设置状态”异常问题解决

ASP.NET中报“无法在已发送HTTP标头之后设置状态”异常问题解决

        ASP.NET中报“无法在已发送HTTP标头之后设置状态”异常,是因为设置Response的StatusCode之前,程序已设置响应标头。可从以...

ASP.NET网站自定义错误处理及其它安全相关

ASP.NET网站自定义错误处理及其它安全相关

        ASP.NET网站在运行过程中总是有可能报错,例如404等HTTP错误、500等程序异常。在IIS托管并报错的情况下,网站的默认行为依次是:(1).NET运行时接收并处理的部分显示.N...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。