在回答这个问题之前,我们应该给出一个基本答案:什么是SPA ?一个单页的应用程序是一个Web应用程序加载其所有在一个页面上的部件(模块,JavaScript和CSS文件,等等)。根据需要从那里提供更多内容。
单页应用程序与通常的网站不同。他们需要更少的页面刷新来交付用户请求的交互。处理负载的最大部分是在客户端。用户可以在加载的单个HTML页面上动态更新内容,而无需刷新。
这种类型的典型应用看起来就像是普通的网页。但是,将在不重新加载JavaScript的情况下加载和更新内容。页面的最终外观在浏览器中创建。为了达到这种效果,该应用程序使用了高级JavaScript框架:Knockout.js,Meteor.js,Ember.js和AngularJS。
如果您今天使用Google地图,Gmail收件箱或Facebook的新闻提要,那么您就知道SPA是什么。
至于单页应用程序SEO ,这是一个稍微复杂的概念。它的定义很简单:为搜索引擎search优化单个页面应用程序的过程。单页应用程序提供了令人印象深刻的加载速度,并且刷新页面的需求最少。但是,这是以全面搜索引擎优化为代价的。
在开发人员和用户方面都有很多好处:
最大的缺点是单页应用SEO的潜力有限。搜索结束优化取决于单独网页上的稳定内容。另一方面,单页应用程序无需重新加载即可更新和交换数据。
您是否看过Facebook视频并尝试在Google上查找它?找到它并不容易。您会记住视频的内容,然后尝试使用一些与视频内容相关的关键字。您会获得YouTube视频的搜索结果,但找不到您想要的确切内容。这是因为内容尚未针对搜索引擎进行优化。
除了SEO挑战外,还有其他一些问题:
请记住,许多技术巨头都鼓励使用seo单页应用程序,因此大多数这些问题将在不久的将来得到解决。
渲染中必须包含一些元素,这些元素必须立即在页面上可用:
您需要一个完全干净且稳定的URL,以使链接构建实践变得容易。通过更改URL的结构,您可能会犯与其他所有内容重叠的错误。例如,所做的更改可能会破坏用户创建的书签,因此他们将无法轻松登陆您的站点。
2.所有元素都应由搜索引擎呈现
JS引擎为您提供了一个 路由组件,用于为每个页面提供单独的URL。用它!
3.速度至关重要!
Google希望提供最终的用户体验,因此请注意您网站的速度。HTML返回应该快于5秒。如果您缓存页面并将其存储在CDN上,则可以减少服务器端的负载并使内容传递更快 。
4.正确的站点地图是必须的
搜索引擎使用您的站点地图来标识您在站点上提供的信息的类型,因此可以将其与用户搜索的内容放在一起。您的站点地图必须干净,快速更新且正确。
5.特别注意分页
分页不会为SEO增加任何价值。如果您决定实施它,那么它必须是正确的。页面必须具有“上一个”和“下一个” HREF链接。
Sven Lennartz给出了一个很好的提示:由于分页的主要目的是用作改进的导航,因此应该向访问者明确说明他们的位置,已经去过的地方以及下一步可以去的地方。这三个事实使用户完全了解系统如何工作以及应如何使用导航。
Sven Lennartz,《粉碎杂志》前SEO
6.不要忘记内容
始终监视服务器响应的状态。页面上有内容,所以不要忘记它。显示正确吗?预渲染可能会中断,并且页面将显示为空白。监视您的网站是否存在这些问题,并在发现它们后立即进行修复。
7.每个页面需要其URL
在网址中使用#和/#!/是个坏主意,因为搜索引擎无法对其进行扫描。这是错误网址的示例:mywebsite.com/#!/home-page。一个好的URL会更干净:mywebsite.com/home-page。
别忘了:每个页面都需要其单独的URL,因此搜索引擎会将访问者准确定位到他们应该到达的位置。
8.经常更新页面缓存
启动新内容后,必须更新页面缓存。这使您的网站更快,并提高了SPA搜索的效率 。
除了SPA SEO的那些基本做法外,该流程还包含其他一些要素:
老实说:这并不容易。SPA网站的开发似乎相当简单,但这只是完全没有Web设计经验的人看到它们的方式。如果您想设计一个并针对搜索引擎进行优化,则应该做好很多工作。