前后端分离情况下如何做seo优化
首先得先想明白什么是seo,然后再说前后端分离情况下如何做seo优化。
我们假设这个产品是一个新产品,他需要做seo,那么到底什么是seo呢seo的缩写是『search engine optimization』,搜索引擎优化,虽然我不是专业做seo的,我也不是seo工程师(你别说某些网站还真有这个岗位)。
不过或多或少,seo这个行业曾经也是个特别有意思的行业。
优化针对这个问题分2个点:
1,前后端分离的架构,无法提供搜索引擎可收录的页面,需要搜索引擎蜘蛛拥有执行javascript能力才行,可现实是大部分的搜索引擎都不支持。
2,支持了spa架构的产品,如何做seo优化。(第一个点是先让他支持,第二条才落到优化)
我们先看第一个点,我们要做seo支持首先要知道我们要优化哪些search engine。
常见的列举,百度,google,微软必应,搜狗,等等。
那么我们首先得了解search engine才能谈如何做到让页面被收录,这里就拿最常见的百度和google来举例吧。
百度是不支持收录spa的页面的,而且spa的网站对于百度的spider来说等于是只有1个页面,那么如何做到让这种搜索引擎收录页面呢首先我们可以自行提交sitemap,让蜘蛛主动去爬,但是遇到sitemap中的url,到达指定页面后页面只有一段js怎么办,我们可以利用比如<noscript></noscript>标签来进行最简单的优化,比如在noscript里打印出当前页面一些关键的信息点,但是这个做法大家一看就非常的蠢,因为正常用户并不需要这些内容,占用下载量,而且不好维护。那么我们如何判断当前页面是否支持运行javascript呢前端已做到,用noscript,后端不行,那么只好针对百度的spider做ua判断了,这也就是大家常见的一些解决方案,使用phantomjs或者nginx代理,来对spider访问的页面进行特殊的处理,达到被收录的效果。
那么这么做其实是有一些副作用的,比如你收录的页面和用户正常访问的页面差别较大是有被搜索引擎k掉的风险的,所以更多的做法还是选择首屏使用ssr的方式渲染,先通过后端路由保证页面的主要信息可以被服务器端输出,然后其他的功能,包括用户之后的路由跳转控制,再使用前端路由来做,曾经的项目经验在新浪博客手机版中也是这么做的,当然当时没有ssr,是后端直接渲染的模板,用户访问后,再进行交互则再采用前后端分离和前端路由控制来完成。
深圳网站建设费用怎么计算点击广告平台快照不更新的因素有哪些?长沙做网站四个月的经验和体会网站建设中必须定制的要素百度搜索应该关注的5个问题是什么?公司网站建设制作时这价格方面的问题不得不注意企业中需要重视的地方网站建设重中之重