单页面应用程序是指什么?

2021-02-04 22:48:35发布

1条回答
老天爷 - 天爷SEO
2楼-- · 2021-02-21 21:50:03

单页面应用程序(SPAs)是使用AJAX和HTML 5语言的加载浏览器中的HTML页面的网页应用,然后在用户与应用交互时动态上传页面的内容。加载页面内容或者渲染的大部分工作都是由客户方来完成的(相反则是服务器),能够创建快速和流畅的用户体验,加快页面加载。一般页面的URL要保持一致。通常用来进行SPA开发的框架包括Angular.js、Backbone.js和Ember.js,很多流行应用包括VirginAmerica、Twitter和Square都分别使用了这些框架。


在你使用这些框架创建网站时,有一个主要的问题需要说明,那就是URL可爬取性——也就是说,确保搜索引擎能够爬取你的网站URL,访问你的网站内容。要具备一个发布系统,让你可以定制化URL,移除URL中的#或者#!,创建用户友好、书签化以及可以跳转的URL。开发人员可以使用很多方法来创建搜索和用户友好的URL,两个最近的例子是[removed].hash和HTML 5的history.pushState,基于你的网站和用户的目标,它们各有优缺点。堆叠溢位中描述了关于这两个选项的具体信息。


Angular.js:做到SEO-友好

为所有的SPA框架进行搜索引擎细节化开发超出了本书的范畴;然而,下面的信息提供了Angular.js的指导原则和工作区,感谢SEO/Angular.js的开发人员JeffWhelpley,他帮助本书合著作者Jessie Stricchiola为Events.com炼金术新媒体客户端进一步说明了这个问题。


服务器渲染VS仅客户端渲染

如果网站站长不关心是否获取最高排名,唯一的目标是加入索引——并且,唯一的目标是获得谷歌的收录,而不是其他的搜索引擎——那么可以使用Angular仅仅进行客户端渲染。谷歌最近很善于将客户渲染的HTML加入索引。如果你走这条路,你将要做到以下几点:

单页面的应用程序是指什么?

1.激活Angular推进状态,这样你就能获得不杂乱的整齐的URL。

2.实施UI路由或者Angular新组建的路由器,这样你能够将URL映射到页面上。

3.为页面题目、URL和内容等遵循所有正常的SEO实践步骤。这里也是如此。

4.优化初始页面加载——很多人认为对客户渲染应用来说首页加载时间不重要,但是实际上很重要!


尽管以上方法对谷歌检索适用,但在自然搜索中使用服务器渲染效果更好。原因如下:

·谷歌善于客户渲染,尽管并不完美。

·其他搜索引擎并不擅长。

·Facebook或者Twitter链接预览不会发生作用。

·加快服务器端渲染比加快初始加载客户端渲染要容易得多——这其中差别很大。


服务器端渲染选项如下:

·使用PHP或者另一种语言。这一项可以奏效但是要求你复制所有的页面,除非你是一个小/简单的网站,否则这一项不

·使用Prerender.io或者类似的服务。这一项很有效,但是对大型网站来说比较昂贵,设置很麻烦,而且你也要容忍长时间的页面缓存(例如,服务器页面就要加载很长时间)。

·为Jangular图书馆构建定制解决方案。尽管有效果,但是它需要繁重的工作量。

·等待Angular 2.0。


2015年7月份,Jeff与Angular核心团队一起协作,将服务器端渲染升级到Angular2.0。对那些仍在处理2.0之前版本存在的问题的开发人员已经排除了不能进行全面修复的人员,以确保总是可以将客户端路由解决方案植入并且结合Angular应用程序,这样当时机成熟时就能升级到2.0版本。


注意非常感谢Jeff Whelpley对本章节Angular.js部分的贡献。

一周热门 更多>

相关问答