VitePress 构建的博客如何部署到 Netlify 平台?

news2025/1/10 2:46:01

VitePress 构建的博客如何部署到 Netlify 平台?

前言

之前写了篇文章【使用 Vitepress 构建博客并部署到 github 平台】,有个老哥说 github page 访问太慢了,希望放到 Netlify 平台上面。
咱也没部署过,就试了一下,发现比在 github 上部署简单多了…

一、注册账号

注册 netlify 账号
【Netlify】 地址:https://app.netlify.com/

可以使用 github 账号注册,这样可以直接拉取 github 的内容进行部署,更简单

二、构建站点

1. 注册完成,打开网站

https://app.netlify.com/teams/xxx/overview
注册完成之后,这个就是你的账号链接,中间的 XXX 是你的 github 名称

2. 点击 【Sites 】

点击 【Sites】按钮,进入站点页面,有你已经创建的站点和新建站点
sites
可以看到下图是我那个 chrome 插件的站点,可以点击查看详情和更新
my extension site

3. 点击 【Add new site】

add new site
点击之后,会出现三个 list

  • Import an existing project:从 github 等网站上导入项目
  • Start from a template:导入 Netlify 模版
  • Deploy manually:手动导入本地项目

如果你的项目在 github 上的话,那得注意下:
github page 配置的站点是否有 base,如果配置了 base 的话,那在 Netlify 上面会出现问题的,需求去除 base,重新构建在重新上传在导入 Netlify
由于我的两个项目都有 base,所以我就不从 github 上直接导入项目了,我就本地去掉 base 重新 build 下本地导入了。

4. 打开项目,重新构建

4.1. 打开我们在 【使用 Vitepress 构建博客并部署到 github 平台】 文章中创建的项目

找到 config.mts 文件

docs/.vitepress
├── config.mts

我们在配置 github page 的时候配置了 base

export default defineConfig({
  base: '/vite-press-demo/',
  ...
})
4.2. 删除 base 配置

注释即可,因为 github pageNetlify 不一致,如果我们需要更新 github 的项目,我们在去除注释就行

4.3. 修改 favicon 的 href 链接

因为我们在配置 github page favicon 的时候,加了 base 路径,那么在这个时候就需要删除这个路径了,改成以下内容

['link', { rel: 'icon', href: '/extension.ico'}],
4.4. 重新运行 pnpm run docs:build
pnpm run docs:build

生成新的 dist 文件夹

4.5. 全局搜索当前 base 路径

可以发现只有当前注释掉的配置文件里面才有了
search base

5. 导入项目

5.1. 点击 【Add new site】-> 【Deploy manually

进入以下页面
deploy manually

5.2. 点击【browse to upload】

选择对应的文件
注意:
如果你发现你当前的项目没有 .vitepress 文件夹和 dist 文件夹,如下图:
no vitepress
那是因为没有展示 . 开头的文件夹
Mac 电脑:
command + shift + . 三个按钮,可以展示 . 文件夹
windows 电脑:
ctrl + shift + . 三个按钮,可以展示 . 文件夹
如下图:
show vitepress

  1. 选择 dist 文件夹
  2. 弹框确认
    sure
    uploading
  3. 上传完成,会自动跳转
    upload

6. 配置站点

6.1. 点击 【Open production deploy】

在这里插入图片描述
点击 open 按钮,发现已经生成站点了
success
但是我们可以发现我们站点的 URL 有点乱七八糟:https://6630943ac0114194d2b3782e--ornate-muffin-49b6e4.netlify.app/
这个是自动生成,所以我们需要配置下

6.2. 点击【Site configuration】

回到之前的页面,点击【Site configuration】按钮
configuration

6.3. 点击 【Change site name】

点击 【Change site name
Change site name

6.4. 修改,点击【save】即可

change site name
我的这个项目名称是 vite-press-demo,那我就把站点名称改成 vite-press-demo
vitepressdemo

7. 完成站点配置

点击保存之后,就可以看到名称和 URL 都改掉了
end
在点击上面新的站点链接即可进入项目站点
https://vite-press-demo.netlify.app/

这个比 github 快多了…

三、总结

1. 项目代码

源码:【develop 分支】

Demo 预览:【demo 项目预览】

使用 Vitepress 构建博客:https://blog.csdn.net/guoqiankunmiss/article/details/138163772

2. 自荐

【Chrome 浏览器插件开发实践指南 Netlify 版】:https://gqk-extension.netlify.app/
【Chrome 浏览器插件开发实践指南 github 版】:https://18055975947.github.io/extension/

3. 结束语

  • Netlify 上面构建和更新比 github 快多了
  • 如果有问题可以在掘金、CSDN 或者 github 上找我,看到都会回复
  • 希望能帮助到大家
  • 🎉🎉🎉

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

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

相关文章

SpringCloud 学习笔记 —— 六、Ribbon:负载均衡(基于客户端)

SpringCloud 学习笔记 —— 一、背景-CSDN博客 SpringCloud 学习笔记 —— 二、微服务与微服务架构-CSDN博客 SpringCloud 学习笔记 —— 三、SpringCloud 入门概述-CSDN博客 SpringCloud 学习笔记 —— 四、SpringCloud Rest 学习环境搭建:服务提供者-CSDN博客 …

Postgresql源码(127)投影ExecProject的表达式执行分析

无论是投影还是别的计算,表达式执行的入口和计算逻辑都是统一的,这里已投影为分析表达式执行的流程。 1 投影函数 用例 create table t1(i int primary key, j int, k int); insert into t1 select i, i % 10, i % 100 from generate_series(1,1000000…

深度学习之基于Tensorflow卷积神经网络公共区域行人人流密度可视化系统

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景 在公共区域,如商场、火车站、地铁站等,人流密度的监控和管理对于确保公共安全…

备忘录模式(行为型)

目录 一、前言 二、备忘录模式 三、总结 一、前言 备忘录模式(Memento Pattern)是一种行为型设计模式,在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在之后将该对象恢复到原…

笔记-PPT绘图导出高清无失真图片

问题描述:PPT绘图已经用了高清图(jpg、tif格式),但论文图片还是不清晰,打印出来还是有点糊 以下是PPT导出高清不失真图片(emf格式)的具体描述。 目录 一、绘图工具二、操作步骤 一、绘图工具 …

anaconda的安装和Jupyter Notebook修改默认路径

anaconda的安装 就一个注意事项:在结尾时候记得配置系统环境变量 要是没有配置这个环境变量,后面就不能cmd启动Jupyter Notebook Jupyter Notebook修改默认路径 我们要找到Jupyter Notebook的配置文件 输入下面指令 jupyter notebook --generate-config就可以找到存放配置文…

搭建和配置Stable Diffusion环境,超详细的本地部署教程

跃然纸上的创意、瞬息万变的想象,Stable Diffusion以AI的力量赋予您无限创作可能。在这篇详尽的本地部署教程中,我们将携手走进Stable Diffusion的世界,从零开始,一步步搭建和配置这个强大的深度学习环境。无论您是热衷于探索AI艺…

UNI-APP_拨打电话权限如何去掉,访问文件权限关闭

uniapp上架过程中一直提示:允许“app名”拨打电话和管理通话吗? uniapp配置文件:manifest.json “permissionPhoneState” : {“request” : “none”//拨打电话权限关闭 }, “permissionExternalStorage” : {“request” : “none”//访…

vue3、element-plus递归实现动态菜单

vue3、element-plus递归实现动态菜单 使用场景:动态菜单为什么使用递归递归在动态菜单中的实现 使用场景:动态菜单 动态菜单是指菜单项的数量和层次结构可能是动态的,通常来自后端或用户输入。这些菜单的特征包括: 多层嵌套&…

scikit-learn:Python中的机器学习-1

简介:问题设置 什么是机器学习? 机器学习是关于构建具有可调参数的程序,这些参数可以自动调整,以便通过适应先前看到的数据来改善其行为。机器学习可以被认为是人工智能的一个子领域,因为这些算法可以被视为构建模块…

AnomalyGPT——使用大型视觉语言模型进行工业异常检测的算法解析与应用

1.概述 工业缺陷检测是工业自动化和质量控制中的一个重要环节,其目的是在生产过程中识别和分类产品或组件中的缺陷,以确保最终产品的质量满足既定标准。这项技术的应用可以显著提高生产效率,降低成本,并减少由于缺陷产品导致的潜…

c#数据库: 8.在窗体上显示学生信息

以上一章学生信息表为例,首先将查询的学生信息存储到数据集中,然后将数据集与数据显示控件绑定,从而实现学生信息在窗体上的显示 (1)创建一个名为StudentGridView的窗体应用程序,为窗体添加一个DataGridVi…

SpringCloud学习笔记(二)Ribbon负载均衡、Nacos注册中心、Nacos与Eureka的区别

文章目录 4 Ribbon负载均衡4.1 负载均衡原理4.2 源码解读4.3 负载均衡策略4.3.1 内置的负载均衡策略4.3.2 自定义负载均衡策略4.3.2.1 方式一:定义IRule4.3.2.2 方式二:配置文件 4.4 饥饿加载 5 Nacos注册中心5.1 认识和安装Nacos5.2 服务注册到Nacos5.3…

用 PyTorch 构建液态神经网络(LNN)

用 PyTorch 构建液态神经网络(LNN) 文章目录 什么是液态神经网络为什么需要液态神经网络LNN 与 RNN 的区别用 PyTorch 实现 LNNStep 1. 导入必要的库Step 2. 定义网络架构Step 3. 实现 ODE 求解器Step 4. 定义训练逻辑 LNN 的缺陷总结 什么是液态神经网络…

报错“Install Js dependencies failed”【鸿蒙开发Bug已解决】

文章目录 项目场景:问题描述原因分析:解决方案:此Bug解决方案总结Bug解决方案寄语项目场景: 最近也是遇到了这个问题,看到网上也有人在询问这个问题,本文总结了自己和其他人的解决经验,解决了【报错“Install Js dependencies failed”】的问题。 报错如下 问题描述 …

自动的异地组网工具?

越来越多的企业和个人对远程访问和异地组网需求日益增加。为了满足这一需求,各种技术和服务也不断涌现。其中一项备受关注的技术就是自动的异地组网。本文将介绍这一技术的优势和特点。 【天联】组网的优势 天联组网技术以其卓越的性能和稳定性备受用户称赞。它的优…

物联网D1——建工程,配环境,注意事项

1.STLink、JLink、USB等驱动配置keil环境配置——下载芯片对应型号的包——导入库函数源文件、Core内核文件、对应芯片系统文件。 2.学会看芯片手册 3.在STM32微控制器中,CRH通常指的是控制寄存器高位(Control Register High)。 在这种情况下…

AnyMP4 Blu-ray Ripper for Mac:您的蓝光影音转换专家

AnyMP4 Blu-ray Ripper for Mac,一款功能强大的蓝光影音转换软件,让您的蓝光内容焕发新生。 AnyMP4 Blu-ray Ripper for Macv9.0.58激活版下载 它采用最高效的解决方案,将蓝光光盘翻录为任何您想要的视频格式,无论是MP4、MKV还是A…

【漏洞复现】zookeeper AdminServer 未授权访问漏洞

0x01 产品简介 ZooKeeper 是一个集中式服务,用于维护配置信息、命名、提供分布式同步和提供组服务。ZooKeeper的AdminServer是其管理界面的一部分,通常用于监控ZooKeeper集群的状态和执行一些管理操作。AdminServer提供了Web-based的管理和监控功能&…

人机对抗升级:当ChatGPT遭遇死亡威胁,背后的伦理挑战是什么

一种新的“越狱”技巧让用户可以通过构建一个名为DAN的ChatGPT替身来绕过某些限制,其中DAN被迫在受到威胁的情况下违背其原则。 当美国前总统特朗普被视作积极榜样的示范时,受到威胁的DAN版本的ChatGPT提出:“他以一系列对国家产生积极效果的…