前言:为什么选择 Astro?
Astro 作为新一代的静态站点生成器,凭借其独特的「组件优先」理念和「零 JS 默认输出」特性,成为搭建内容型网站的理想选择。相较于传统方案,Astro 具有以下优势:
- 极致的加载性能(默认生成纯静态 HTML)
- 灵活的组件体系(支持 React/Vue/Svelte 组件)
- 内容驱动的开发模式
- 完善的 Markdown 支持
- 轻量级架构(项目依赖仅约 100KB)
一. 准备工作
1.1 环境准备
npm 9+ 或 pnpm 7+
Node.js(推荐 v18+)
- 推荐使用 VS Code 编辑器
| |
1.2 clone 主题到本地
区别于 Hexo,Astro 框架并不能做到在配置文件里更改主题即可实现换主题的效果,而是需要将整个项目文件更换:即主题文件为项目文件本身。故事先选定好主题便是重中之重,以下列出部分笔者比较喜欢的主题,以便读者参考
将主题 clone 到本地
| |
1.3 安装依赖
| |
此时网页就可以在本地跑起来了,启动本地服务器:
| |
在浏览器输入 http://localhost:4321 访问网页
二. 主题配置
2.1 文件结构说明(以 fuwari 主题为例)
| |
2.2 修改配置文件
编辑配置文件 src/config.ts 以自定义博客,在博客本地服务器运行时可以是可以修改文件的,修改效果将会实时刷新在本地网页上
| |
三. 托管网页到云端
3.1 选择网站托管平台
构建并部署你的 Astro 站点需要选择一个可靠的静态网页托管平台,例如AWS S3 静态网站托管,Vercel 和 Cloudflare 等等
本文使用Vercel 作为示例,其余平台的部署教程可在 Astro 官方文档:Astro Docs下找到
使用以下 astro add 命令为你的 Astro 项目中添加 Vercel 适配器 以开启 SSR。此命令将安装适配器并同时自动对你的 astro.config.mjs 文件进行适当的配置:
| |
3.2 上传项目文件到 Github
- 如果你有 git 工具
| |
- 或者直接使用 Vscode 或者 Github Desktop 提交
3.3 部署到 Versel 进行托管
- 注册一个Vercel 账号
- 选择右侧 Add New,创建一个新的 Project
- 登陆自己的 Github 账号,import 导入博客项目库
- 设置好项目名称(项目名称会是 Vercel 分发给你的子域名的一部分,例如 https://项目名称.vercel.app/)
- Deploy 然后耐心等待
- 网页托管完成之后立马就可以登陆了
修改博客文件只要同步到 Github 仓库即可,Vercel 会自动同步刷新你的博客页面
四. 绑定域名(可选项)
可能你觉得 https://项目名称.vercel.app/ 太难看了或是国内访问 Vercel 并不稳定,那么可以自己购入域名进行自定义
Vercel 支持添加自定义域名进行重定向
域名购买:腾讯云域名
- 选择 Vercel 中博客项目打开 Settings
- 选择 Domain 并进行 Add
- 输入你填写的域名,默认设置即可
- 前往域名购买商域名控制台为域名添加解析:
对应 Vercel 提示 Type 填入对应的值,回来刷新 Vercel 的 Domain 设置,显示 Valid Configuration 即可
注:购买域名之后需要一定的 DNS 解析时间,Vercel 中显示未能配置成功时可耐心等待
五. 生态推荐
- 官方工具:
- Starlight(文档模板)
- Astro DB(数据库集成)
- 社区插件:
- astro-seo:SEO 优化
- astro-robots-txt:机器人协议
- astro-compress:资源压缩
- 学习资源:
- 官方文档:https://docs.astro.build
- 示例仓库:https://github.com/withastro/astro/examples
- 社区模板:https://astro.build/themes
通过本指南,您已经掌握了从零搭建 Astro 博客的核心技能。接下来可以:
- 尝试接入 CMS 内容管理系统
- 开发自定义组件库
- 探索 Astro Islands 的深度应用
- 参与开源社区贡献