发布与部署
发布与部署
本章介绍如何将网站构建为静态文件并部署到线上。
SEO 与分享
在发布之前,建议为每篇文章配置好 SEO 信息,这样分享链接时能够显示预览卡片。
文章 SEO 配置
在博客文章的信息头中添加:
---
title: 文章标题
seo:
title: 分享时显示的标题
description: 分享时显示的描述
image:
src: '@img/blog/my-post/share-cover.jpg'
alt: 分享卡片配图
---
网站 SEO 配置
在 src/data/config/identity.ts 中配置网站级的 SEO 信息:
TypeScript
image: { src: '/assets/site/vergil-preview.jpg', alt: 'Vergil 主题预览图'}构建与部署
本地构建
运行以下命令生成静态文件:
Bash
pnpm build构建完成后,静态文件会输出到 dist/ 目录。
pnpm build 会先运行 pnpm images:organize,把内容里的图片整理到规则目录,再开始构建,所以在本地构建后,git diff 里可能会看到图片路径被改成了 @img/。说明见 图片与静态资源。
选择部署平台
- 在 Vercel 注册账号
- 导入你的 GitHub 仓库
- 框架预设选择 Astro
- 点击部署
Vercel 会自动监听代码推送,每次提交后自动重新部署。
EdgeOne Pages 是腾讯云推出的静态网站托管服务,部署在国内边缘节点,适合主要面向国内读者的站点。
- 登录 腾讯云 EdgeOne 控制台
- 进入 Pages 服务,点击新建项目
- 选择导入 Git 仓库,授权并选择你的代码仓库
- 填写构建设置:
- 框架预设:选择 Astro(或静态网站)
- 构建命令:
pnpm build - 输出目录:
dist
- 点击部署,等待构建完成
EdgeOne Pages 会自动监听代码推送。构建完成后,可在控制台绑定自定义域名并开启 HTTPS。
Tip
关于备案:
- 使用默认域名(如
xxx.edgeone.app)无需备案,海外和国内均可访问 - 绑定自定义域名指向国内节点时需要已备案域名
- 在 Netlify 注册账号
- 选择 Add new site → Import an existing project
- 选择你的 GitHub 仓库
- 构建设置:
- Build command:
pnpm build - Publish directory:
dist
- Build command:
- 点击部署
- 在仓库设置中启用 GitHub Pages
- 选择 GitHub Actions 作为部署来源
- 创建 GitHub Actions 工作流文件
.github/workflows/deploy.yml(可参考 Astro 官方部署文档)
Tip
部署前务必把 src/data/site-config.ts 里的 website 改成你自己的站点地址。sitemap 和 RSS 生成的绝对 URL 都依赖它,不改的话这两项会指向错误的域名。