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

AJAX网页如何实现SEO友好

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

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

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

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

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

标签: ITSEOAjax
分享给朋友:

“AJAX网页如何实现SEO友好” 的相关文章

jQuery AJAX跨域在IE9及以下版本中失效问题

jQuery AJAX跨域在IE9及以下版本中失效问题

        使用jQuery AJAX在IE9及以下版本浏览器中提交HTTP跨域请求时,浏览器会报错且并不执行该操作,是因为IE9及以下版本默认不支持跨域请...

 通用基础表逻辑设计(二)——扩展字段

通用基础表逻辑设计(二)——扩展字段

一、扩展字段表        一个表的字段可能并非一成不变,系统的运行、需求的变化等客观条件可能会需要增加其他字段,如何在不直接修改表设计的前提下满足需求呢?该...

ASP.NET实现HTTP长轮询(三)——MVC

ASP.NET实现HTTP长轮询(三)——MVC

        本文主要描述如何在ASP.NET MVC中实现长轮询:(1)控制器继承AsyncController:using System.Threading; using ...

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...

发表评论

访客

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