×

Vue SPA SEO 优化 预渲染 Prerender-spa-plugin

SEO优化之预渲染:Vue SPA项目

元智汇电子 元智汇电子 发表于2023-11-09 11:38:53 浏览754 评论0

抢沙发发表评论

目的

由于基于Vue的SPA项目的普通爬虫无法爬取项目的静态文本内容,因此使用预渲染插件prerender-spa-plugin来解决Vue SPA项目的SEO问题。

可以看到项目编译后的index.html只包含了一些HTML、js、css文件的引用,并没有关于内容的静态文本。当然,你也可以添加元关键字和描述来简要描述网站的一些内容。

image.png

使用过程

Vue预渲染插件Prerender-spa-plugin GitHub地址

能够解决的问题

  • SEO

  • Slow Client

  • OpenGraph/Social Metadata

无法解决

  • 用户特定的内容:不同的用户会看到不同的页面。这种类型的页面不适合预渲染。

  • 经常更改内容:对于一些经常变化的页面,比如体育比赛等,编译后的数据不会实时更新。

  • 数千个路由器:它不适合路由太多的页面,这会导致构建过程等待极长的时间。

实现

主要是通过Webpack插件,控制编译静态文件的方式。

image.png

Webpack简易配置

image.png

  • 打包完成后,你会发现原来的dist目录下多了about、contact等目录。该目录下会有对应的index.html文件;这个文件是对应的路由产生后的静态页面,方便SEO。

image.png

  • 如果需要配置路由访问,还需要配置Apache或Nginx等访问,并将对应的路由访问匹配到指定目录下的index.html文件。

    image.png

常遇到的几个问题:

  • 项目中使用的版本是2.1.0版本。 @3.0.0版本未安装成功。安装过程中会卡住,导致下载失败。如果直接终止的话,构建过程中会报错。

  • 如果没有对应的路由或者有拼写错误,构建也会报错。

  • webpack中配置的路由需要和router保持一致,注意/符号

  • 需要注意Apache的配置以及其他配置。如果访问静态文件,都会访问到dist/static/目录,而不是dist/about/static

群贤毕至

访客