vue项目SEO不友好怎么办?

这篇具有很好参考价值的文章主要介绍了vue项目SEO不友好怎么办?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

解决vue项目SEO不友好的问题

首先了解什么是SEO?

SEO是由英文Search Engine Optimization缩写而来, 中文意译为“搜索引擎优化”。

SEO是指通过站内优化比如网站结构调整、网站内容建设、网站代码优化等及站外优化,比如网站站外推广、网站品牌建设等,使网站满足搜索引擎收录排名需求,在搜索引擎中提高关键词排名,从而把精准用户带到网站,获得免费流量,产生直接销售或品牌推广。

SEO主要优化哪些内容?

内部优化

  • META标签优化:例如:TITLEKEYWORDSDESCRIPTION等的优化

  • 内部链接的优化,包括相关性链接(Tag标签),锚文本链接,各导航链接,及图片链接

  • 网站内容更新:每天保持站内的更新(主要是文章的更新等)

外部优化

  • 外部链接类别:博客、论坛、B2B、新闻、分类信息、贴吧、问答、百科、社区、空间、微信、微博等相关信息网等尽量保持链接的多样性。

  • 外链组建:每天添加一定数量的外部链接,使关键词排名稳定提升。

  • 友链互换:与一些和你网站相关性比较高,整体质量比较好的网站交换友情链接,巩固稳定关键词排名。

引擎蜘蛛的工作原理?

网络爬虫在爬取网页内容的时候,需要分析页面内容,主要有以下几点:

  • 从 meta 标签中读取 keywordsdescription 的内容。

  • 根据语义化的 html 的标签爬取和分析内容。一个整体都是用 div 标签的网站和正确使用了 html5 标签的效果是不一样的。

  • 读取 a 标签里的链接,通过 a 标签的链接可以跳转到别的网站。(爬虫是先跳转,还是继续爬内容再跳转,就看算法是广度优先还是深度优先了)

  • h1 - h6 标签是具有不同程度的强调意义的。

  • 一般将 h1 视为重要内容。同样有强调内容还有 strongem 标签。

SEO为啥对vue单页面不友好?
  1. vuejs来渲染数据对SEO不友好

    搜索引擎的基础爬虫的原理就是抓取你的url,然后获取你的html源代码并解析。 而vue项目是采用js的数据绑定机制来展现页面数据的,爬虫获取到的html是你的模型页面而不是最终数据的渲染页面,所以说用**js来渲染数据对seo并不友好**。

  2. vue单页页面对SEO不友好

    seo 本质是一个服务器向另一个服务器发起请求,解析请求内容。但一般来说搜索引擎是不会去执行请求到的js的。也就是说,如果一个单页应用,html在服务器端没有渲染数据,在浏览器才渲染出数据的,而搜索引擎请求到的html是没有渲染数据的。 这样就很不利于内容被搜索引擎搜索到, 所以服务端渲染就是尽量在服务器发送到浏览器前页面上就是有数据的

解决方案

目前了解到两种解决方案:

1.服务端渲染,VueSSR渲染(配置参考),SSR比较复杂。

2.页面预渲染,prerender-spa-plugin插件实现(配置参考)

第一种服务端渲染可以参考Vue官方文档中SSR服务端渲染,对Vue版本有要求,对服务器也有一定要求,需要支持nodejs环境。

这里主要介绍一下使用prerender-spa-plugin页面预渲染的方法:

原理:利用库 prerender-spa-plugin + vue-meta-info 配置webpack和页面实现预渲染方案,最终build出来多个html文件

  1. 首先需要安装prerender-spa-pluginvue-meta-info

    npm install --save prerender-spa-plugin
    npm install --save vue-meta-info
    

    prerender-spa-plugin解决打包多个页面

    vue-meta-info解决SEO的问题

  2. 在项目中找到main.js,配置以下代码

    import Vue from 'vue'
    import MetaInfo from 'vue-meta-info'
    Vue.use(MetaInfo)
    new Vue({
      router,
      render: h => h(App),
      mounted () {
        document.dispatchEvent(new Event('render-event'))
      }
    }).$mount('#app')
    
  3. 配置webpack

    const path = require('path')
    const PrerenderSPAPlugin = require('prerender-spa-plugin');
    const Renderer = PrerenderSPAPlugin.PuppeteerRenderer;
    module.exports = {
      new PrerenderSPAPlugin({
        // 必需 - 要预渲染的 webpack 输出应用程序的路径
        staticDir: path.join(__dirname, '/dist'),
        // 必需 - 要渲染的路由。
        routes: [
          '/index',
          '/home',
          '/login',
        ],
        // 预渲染代理接口
        // server: {
        //   proxy: {
        //     '/api': {
        //       target: 'http://localhost:9001',
        //       secure: false
        //     }
        //   }
        // },
        // 渲染器
        renderer: new Renderer({
          // 可选 - 要添加到包含 `inject` 内容的 window 对象的属性名称。
          injectProperty: '__PRERENDER_INJECTED',
          // 可选 - 您希望您的应用程序可以通过 `window.injectProperty` 访问的任何值。
          inject: {
            foo: 'bar'
          },
          headless: true, // 渲染时显示浏览器窗口。用于调试
          renderAfterDocumentEvent: 'render-event' // 对应main.js中的事件名
        })
      }),
    }
    
  4. 将需要预渲染的页面配置SEO文字内容(对应上面routes数组里路由指向的页面)文章来源地址https://www.toymoban.com/news/detail-516782.html

    export default {
      metaInfo: {
        title: '我是 index 页面的title',
        meta: [
          {
            name: 'keywords',
            content: '我是 index 页面的keywords'
          },
          {
            name: 'description',
            content: '我是 index 页面的description'
          }
        ]
      },
    }
    

到了这里,关于vue项目SEO不友好怎么办?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 实现一个 SEO 友好的响应式多语言官网 (Vite-SSG + Vuetify3) 我的踩坑之旅

    在 2023 年的年底,我终于有时间下定决心把我的 UtilMeta 项目官网 进行翻新,主要的原因是之前的官网是用 Vue2 实现的一个 SPA 应用,对搜索引擎 SEO 很不友好,这对于介绍项目的官网来说是一个硬伤 所以在调研一圈后,我准备用 Vite-SSG + Vue3 + Vuetify3 把官网重新来过,前后花

    2024年03月11日
    浏览(40)
  • vue3没有this怎么办?

    在vue3中,新的组合式API中没有this,那我们如果需要用到this怎么办? 解决方法: getCurrentInstance 方法获取当前组件的实例,然后通过 ctx 或 proxy 属性获得当前上下文,这样我们就能在setup中使用router和vuex了 但是 但是,不建议使用,如果要使用router和vuex,推荐这样用: 大家不要依赖 ge

    2024年03月10日
    浏览(71)
  • Vue没有node_modules怎么办

    npm install 一下 然后再npm run serve 就可以运行了    

    2024年02月12日
    浏览(33)
  • 白杨SEO:Google SEO怎么做?谷歌seo优化包含哪些内容?

    先说说为啥要写这个话题? 要看图片在公众号白杨SEO上。 大家知道白杨SEO写百度SEO居多,现在也基本都是全网各平台SEO,精准搜索流量相关,为什么今天想到来写谷歌SEO呢? 第一,白杨SEO虽然没有做谷歌SEO项目(网站)有六年了,但从2011年进入SEO这行做了2年,2015年初到

    2024年02月08日
    浏览(48)
  • 电脑只能登录微信?但却打不开网页?不能上网怎么办?ip地址和DNS出问题了无法上网怎么办?

    描述一下问题: 昨天使用了一些代理梯子。直接关机,没有关闭那个软件、今天打开电脑就出问题了。只能登录微信!但却打不开网页! 今天查了很多资料都没有解决。花了2个多小时。终于可以上网了! 找到【控制面板】 --【网络和Internet】-- 里面的【网络连接】或者【网

    2024年02月05日
    浏览(44)
  • SEO是什么意思 - SEO优化具体怎么做?

    SEO,全称Search Engine Optimization,也即搜索引擎优化。属于网络营销的一个分支,也常会被划分为运营市场。 SEO是什么意思 以百度为例,搜一个的时候看到的搜索结果页上面,各类结果大致可以分为三块——付费推广、特型展示、自然流量。 付费推广 付费推广即PPC,现

    2024年02月10日
    浏览(45)
  • 什么是百度SEO?百度SEO优化怎么做?

    百度SEO,也称为百度搜索引擎优化,是一种通过优化网站,提升网页在百度搜索结果中的排名,从而获得更多有机流量的技术和策略。对于想要在中国市场进行在线业务的企业和网站来说,百度SEO是一项关键的数字营销策略。 百度是中国最大的搜索引擎,拥有超过90%的市场份

    2024年02月07日
    浏览(136)
  • 什么是抖音SEO,抖音seo优化怎么做?抖音seo实操教程

    最近很多童鞋们在后台私信我,都在问:抖音SEO应该如何做?不知道怎么开头去做? 这其实是很多人遇到的问题,因为你们大多数人不明白抖音SEO是什么。 都知道它好,但是却抓不住,不会做排名优化,不会插入,更不会去做抖音SEO的内容。 所以今天整理出一个系列

    2024年02月01日
    浏览(43)
  • 遇到移动号码手机停机怎么办?如何自助解决上网问题?

    今天是 2022年4月1日,是的,愚人节。 一大早去赶地铁上班(深圳高峰期挤地铁特别是 1 号线简直被挤爆)的路上,发现上不了网了!原来是话费停机欠费了,忘了提前充话费。想回家连个 WiFi 但是出门很远了,还是算了。 后来我想:要不要随便去一家门店蹭个 WiFi?毕竟早

    2024年02月16日
    浏览(45)
  • 在vue中如果computed属性是一个异步操作怎么办?

    在计算属性中使用异步方法时,可以使用async/await来处理异步操作。由于计算属性是基于它们的依赖缓存的,所以我们需要使用一个返回Promise的异步方法来确保计算属性能够正常运行。 下面是一个简单的示例,演示如何在计算属性中使用异步方法: 在上面的示例中,我们定

    2023年04月15日
    浏览(24)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包