VUEのSEOソリューション

オプション1:事前レンダリングprerender-spa-plugin

いくつかのマーケティングページ(/、/について、/連絡先など)のSEOを改善するためだけに使用されている場合は、事前レンダリングが必要になることがあります。Webサーバーを使用してHTMLをリアルタイムで動的にコンパイルする代わりに、事前レンダリングメソッドを使用して、ビルド時に特定のルートの静的HTMLファイルを生成します。利点は、事前レンダリングの設定が簡単になり、フロントエンドを完全に静的なサイトとして使用できることです。

利点:

  • 変更は少なく、プラグインの導入が行われます。

不十分:

  • 動的ルーティングは使用できません。
  • ページ数が少ないプロジェクトにのみ適しています。数百ページまでの場合、パッケージ化は非常に遅くなります。

解決策は次のとおりです。

1.最初にインストールする必要がありますprerender-spa-plugin和vue-meta-info,prerender-spa-plugin解决打包多个页面,vue-meta-info解决SEO的问题

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

2.プロジェクトでwebpack.prod.conf.jsを見つけます。ファイル名が異なる可能性があります。このとき、コマンドラインに従って関連ファイルを見つける必要があります

 

 このファイルに次のコードを追加します

 

 

 関連するコードを貼り付けます

const PrerenderSPAPlugin = require( 'prerender-spa-plugin' 
const Renderer = PrerenderSPAPlugin.PuppeteerRenderer
 new PrerenderSPAPlugin({
       // 必須 
      -prerender。staticDir:path.join(__ dirname、 '../ へのwebpack-outputtedアプリへのパス dist ' )、
       // 必須-レンダリングするルート。route 
      :[' / '、' / cart '、' / list ' ]、
      renderer:new Renderer({ 
        inject:{ 
          foo: ' bar ' 
        }、
        headless:false //main.jsのdocument.dispatchEvent(新しいイベント( 'render-event'))では、2つのイベント名が対応している必要があります。
        renderAfterDocumentEvent: 'render-event' 
      })
})、

3. VUEプロジェクトに関連するコードを追加します

 

関連するコードを貼り付け、

new Vue({ 
  el: '#app' 
  router、
  store、
  render:h => h(App)、
    Mounted 
  (){ // renderAfterDocumentEvent。document.dispatchEvent 
new Event( 'render-event ' ))
    } 
})。$ mount( ' #app ')

4.この時点で、複数のページへのパッケージ化を完了し、パッケージングコマンドを実行します。

npm run build

5.パッケージ化が完了すると、関連するフォルダーが表示されます。各ファイルには関連するインデックスがあり、htmlはパッケージ化が成功したことを示します

 

 5次のステップは、SEOの問題を解決し、vue-meta-infoをインポートして、

 

 6次に、必要なコンポーネントに次のコードを追加します

 

 関連するコードを貼り付けます

metaInfo:{ 
    title: 'I am the hello header'、// タイトルを設定 
    meta:[{              // set meta 
      name: 'keyWords' 
      content: 'I am the hello keyword' 
    }、
    { 
      name: 'description' 
      content : '私はこんにちは説明' 
    }] 
 }

7.次に、パッケージングプログラムを実行します。このとき、関連するページに関連するメタが表示されます。

 

 説明が成功したことを確認してください。これで完了です。手をたたいて祝う!

シナリオ2:静的化静的化はNuxt.jsをパッケージ化するもう1つの方法で、Nuxt.jsの革新であり、ページの読み込み速度は非常に高速です。

Nuxt.jsが静的パッケージの生成を実行すると、動的ルーティングは無視されます。

利点:

  • 非常に高速なアクセス速度を持つ純粋に静的なファイル。
  • SSRと比較すると、サーバーの負荷の問題はありません。
  • 静的なWebページはハッカーに攻撃されるべきではなく、より高いセキュリティが必要です。

不十分:

  • 動的ルーティングパラメータが多数ある場合は適用されません。

おすすめ

転載: www.cnblogs.com/binmengxue/p/12718789.html