1 SEO的概念
SEO就是使用特定的技术使得网站的各种关键词排名提升到搜索引擎的理想位置,从搜索引擎中获得更多的免费流量,以及更好地展现网站形象。
2 SEO优化
- 设置合理的title、description、keywords
- 重要的关键词不要超过2次,而且要靠前,不同页面的title要不同
- 使用语义化的html代码,符合w3c规范,语义化代码让搜索引擎容易理解网页
- 重要的内容放在html代码最前,搜索引擎抓取页面是自上而下的,有的搜索引擎对抓取的长度有限制
- 重要的内容不要通过JS输出,搜索引擎不会执行JS获取内容
- 少用iframe,搜索引擎不会抓取iframe
- 非装饰性图片必须加上alt
- 提高网站速度
3 前后端分离的项目怎么SEO
- 使用预渲染,prerender需要由nodejs的支持,而且需要路由使用history模式,hash模式会失效。预渲染的本质就是在打包的时候通过插件将js提前执行,将由内容的html放到服务器上,这样就能被爬虫抓到。
var PrerenderSpaPlugin = require('prerender-spa-plugin')var webpackConfig = merge(baseWebpackConfig, {plugins: [//这段代码意思是拷贝static文件至根目录使得渲染的文件可以找到js、cssnew CopyWebpackPlugin([{from: 'static'}]),new PrerenderSpaPlugin(//将渲染的文件放到dist目录下path.join(__dirname, '../dist'), //需要预渲染的路由信息[ '/','/introduct','/culture','/Chairman','/president','/fund','/news','/honor' ],{//在一定时间后再捕获页面信息,使得页面数据信息加载完成captureAfterTime: 50000,//忽略打包错误ignoreJSErrors: true,phantomOptions: '--web-security=false',maxAttempts: 10,}),
- 服务端渲染SSR,前端耗时少,有利于SEO,网络传输量大,占用服务端运算资源