Nuxt3项目如何通过开启ssr让网页实现seo自由!

news2024/12/26 10:38:38

nuxt.config开启ssr

# nuxt.config.ts

export default defineNuxtConfig({
  // 是否开启SSR
  ssr: true
})

终端运行 npm run generate

generate 预渲染应用程序的每个路由,并将结果存储为纯HTML文件。

 "scripts": {
    "generate": "nuxt generate --dotenv .env.production",
  },
# npx nuxi generate [rootDir] [--dotenv]
# 选项	默认值	描述
# rootDir	.	要生成的应用程序的根目录
# --dotenv	.	指定要加载的另一个 .env 文件,相对于根目录。

渲染成功

这是一个漫长的等待(取决于你项目页面量的复杂程度)

ℹ Prerendered 99 routes in 52.006 seconds                                                                 nitro 15:14:50   
✔ Generated public .output/public                                                                         nitro 15:14:51
✔ You can preview this build using npx serve .output/public                                               nitro 15:14:51
✔ You can now deploy .output/public to any static hosting!                                                      15:14:51
 *  终端将被任务重用,按任意键关闭。 

渲染结果文件存放在你项目的 .output/public 目录,结构如下:

本地预览

在终端打开命令行,输入 npx serve .output/public  

SEO设置校验

在任意浏览器打开 http://localhost:61718/  (参上图示 -Local 地址)

网页成功(如果出现布局乱或者页面事件无效说明渲染出错了)打开后,右键查看源代码

就有你通过useSeoMeta设置的动态seo信息或useHead设置的动态头部属性啦

附上我的seo及head代码段

# app.vue

<script setup lang="ts">
//SEO设置
useSeoMeta({
  title: `${resConf.value.seo.seotitle}-${config.title}`,
  keywords: `${resConf.value.seo.keywords}`,
  description: `${resConf.value.seo.description}`
});
useHead({
  meta: [
    { name: "MobileOptimized", content: "width" },
    { name: "HandheldFriendly", content: "true" },
    { name: "apple-mobile-web-app-capable", content: "yes" }
  ]
});
</script>

静态托管部署

至此,你可以将 .output/public 文件部署到任何静态托管服务上!

结束语

最后附上我的站点地图 sitemap.xml 

关于站点地图sitemap的配置会在后续更新~

包含:

  1. 网站地图表结构(如何控制字段:lastmod、priority..)
  2. 网站地图表的静态数据源
  3. 网站地图表数据源(通过异步请求实现全站点页面动态生成,包含详情页面)
  4. 禁用指定数据源(如登录、注册等页面)
  5. 禁用XSL样式表(默认状态下sitemap.xml经过样式渲染的)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1620482.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

软件兼容性定义以及作用简单讲解-行云管家

设想一下&#xff0c;假如您购买了一款新软件&#xff0c;但发现它无法在您的操作系统上正常运行&#xff0c;这个时候是不是非常恼火&#xff0c;是不是非常生气。所以企业采购新软件之前&#xff0c;一定要保障与其他操作系统能兼容。今天我们就来聊聊什么是软件兼容性&#…

小程序AI智能名片S2B2C商城系统:五大营销技术模块深度剖析

在当今数字化营销的时代&#xff0c;小程序AI智能名片S2B2C商城系统凭借五大核心营销技术模块&#xff0c;为企业提供了强大的私域流量管理与营销能力。下面我们将逐一剖析这五大模块&#xff0c;看它们如何共同助力企业实现精准营销与业务增长。 一、小程序&#xff1a;用户触…

1、Flink DataStreamAPI 概述(上)

一、DataStream API 1、概述 1&#xff09;Flink程序剖析 1.Flink程序组成 a&#xff09;Flink程序基本组成 获取一个执行环境&#xff08;execution environment&#xff09;&#xff1b;加载/创建初始数据&#xff1b;指定数据相关的转换&#xff1b;指定计算结果的存储…

Nintex访问上海斯歌总部,双方达成重要战略共识

近日&#xff0c;Nintex公司&#xff08;K2产品总部&#xff09;亚太区域销售副总裁Keith Payne、资深解决方案工程师Ranjit Nair以及区域销售经理Rachel一行莅临上海斯歌总部进行访问。在此次会晤中&#xff0c;上海斯歌与Nintex就未来在中国大陆及中国香港市场的战略发展达成…

SOLIDWORKS 2024 MBD新增功能

MBD即基于模型的工程定义、是一个用集成的三维实体模型来完整表达产品定义信息的方法体&#xff0c;它详细规定了三维实体模型中产品尺寸、公差的标注规则和工艺信息的表达方法。 01 通过实体几何体控制注解的可见性 SOLIDWORKS 2024 MBD 在用户使用体验上做了很大的提升。S…

QT初识

通过图形化界面输出helloworld 既然学习了QT&#xff0c;那么自然要做经典的输出helloworld字符串的实验。 QT有两好几种方案输出helloworld&#xff0c;一种是通过图形化界面输出&#xff0c;一种是通过代码实现。 这里先了解图形化界面的方案。 创建项目后&#xff0c;点…

高频前端面试题汇总之HTML篇

1. src和href的区别 src和href都是用来引用外部的资源&#xff0c;它们的区别如下&#xff1a; src&#xff1a; 表示对资源的引用&#xff0c;它指向的内容会嵌入到当前标签所在的位置。src会将其指向的资源下载并应⽤到⽂档内&#xff0c;如请求js脚本。当浏览器解析到该元素…

函数式接口及Stream流式计算

一、什么是函数式接口 只有一个方法的接口&#xff0c;例如 FunctionalInterface public interface Runnable { public abstract void run(); }二、Function函数式接口&#xff1a;有一个输入参数&#xff0c;有一个输出 三、断定型接口&#xff1a;有一个输入参数&#xf…

如何用虚拟仿真实训室提质增效?

为积极推进教学改革&#xff0c;优化人才培养方案&#xff0c;紧跟产业发展趋势&#xff0c;响应教育领域数字化改革要求&#xff0c;越来越多院校通过搭建虚拟仿真实训室、数字人实训室&#xff0c;打通了融“理论知识虚拟训练技能训练”为一体的教学和实训。学生通过数字人实…

代码随想录 Day19 字符串 | LC28 实现strStr() 【KMP经典题目】

六、实现strStr() 题目&#xff1a; 力扣28&#xff1a;找出字符串中第一个匹配的下标 给你两个字符串 haystack 和 needle &#xff0c;请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标&#xff08;下标从 0 开始&#xff09;。如果 needle 不是 haystack…

大模型检索召回系统:RAG技术的全面调查与未来展望

随着人工智能技术的飞速发展&#xff0c;大型语言模型&#xff08;LLMs&#xff09;在自然语言处理&#xff08;NLP&#xff09;领域取得了显著成就。然而&#xff0c;这些模型在处理特定领域或知识密集型任务时仍面临挑战&#xff0c;如产生错误信息或“幻觉”。为了克服这些难…

代码随想录算法训练营33期 第五十天 | 188.买卖股票的最佳时机IV

dp[i][0] 不操作&#xff1b;d[i][1]第一次开始持有股票 //dp[i]当前天i的价值情况&#xff0c;dp[i][0]表示不操作的最大价值&#xff0c;dp[i][1]在当前天第一次持有的最大价值&#xff0c;dp[i][2]在当前天第一次卖出的最大价值, dp[i][3]在当前天第二次持有的最大价值&am…

qmt教程2----订阅单股行情,提供源代码

链接 qmt教程2----订阅单股行情&#xff0c;提供源代码 (qq.com) qmt教程1---qmt安装&#xff0c;提供下载链接 今天我重新封装了全部qmt的内容&#xff0c;包括数据&#xff0c;交易 qmt交易 我本来打算全部上次git的&#xff0c;但是考虑到毕竟是实盘的内容&#xff0c;就放…

项目总结计划-(Word)

项目总结计划书-Word 2 项目工作成果 2.1 交付给用户的产品 2.2 交付给研发中心的产品 2.2.1 代码部分 2.2.2 文档部分 2.3 需求完成情况与功能及性能符合性统计 2.3.1 需求完成情况统计 2.3.2 功能符合性分析 2.3.3 性能符合性分析 3 项目工作分析 3.1 项目计划与进度实施分…

消息队列一文全解!!!

消息队列的用途是什么&#xff1f; 第一章 消息队列的用途是什么&#xff1f; 第二章 消息重复消费如何避免&#xff1f; 第三章 消息的顺序性可靠性如何保证&#xff1f; 第四章 高可用的消息队列如何搭建&#xff1f; 第五章 消息队列面试题汇总 文章目录 消息队列的用途是什…

Vue页面生成导出PDF文件

第一种&#xff1a; 使用浏览器自带打印方法window.print(); 也可使用print-js插件&#xff08;原理相同&#xff09; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>printDemo</title> </…

安防监控/智能分析EasyCVR视频汇聚平台海康/大华/宇视摄像头国标语音GB28181语音对讲配置流程

一、背景分析 近年来&#xff0c;国内视频监控应用发展迅猛&#xff0c;系统接入规模不断扩大&#xff0c;涌现了大量平台提供商&#xff0c;平台提供商的接入协议各不相同&#xff0c;终端制造商需要给每款终端维护提供各种不同平台的软件版本&#xff0c;造成了极大的资源浪…

测试工程师面试准备(软硬件)

您好&#xff0c;我叫XXX。学历XX&#xff0c;XXX专业毕业。X年X月份毕业&#xff0c;但是去年二月份已经找到工作开始实习了&#xff0c;目前工作一年了&#xff0c;这一年的过程中我主要负责软件的开发和测试和软硬件联调测试工作。具体来说就是&#xff0c;在软件开发完成后…

制造业小企业内部小程序简单设计

也没什么需求&#xff0c;就是看企业内部外来单位就餐还需要打印客饭单拿去食堂给打饭师傅&#xff0c;出门单还需要打印纸质版&#xff0c;车间PDA扫码出问题需要人手动处理&#xff0c;会议室需要OA申请&#xff0c;但是申请前不知道哪些会议室事空的(因为不是每个人都下载OA…

neovim0.9版本安装

一 安装 Installing Neovim neovim/neovim Wiki (github.com)https://github.com/neovim/neovim/wiki/Installing-Neovim/921fe8c40c34dd1f3fb35d5b48c484db1b8ae94b 1 下载 curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim.appimage chmod ux n…