Skip to content
Treelang's Blog
Go back

使用 Cloudflare Pages 搭建个人主页

Edit page

前言

之前一直想搭建一个属于自己的个人主页,用来整理项目、技术方向和一些正在折腾的东西。相比直接把所有内容放在 GitHub README 里,独立的个人主页会更加直观,也更适合作为长期展示入口。

这次我选择使用 Cloudflare Pages 部署个人主页,原因主要有三个。第一,Cloudflare Pages 对静态站点非常友好,可以直接连接 GitHub 仓库,代码更新后自动构建和部署。第二,Cloudflare 自带 CDN、HTTPS 和 DNS 管理功能,后续绑定自己的域名比较方便。第三,个人主页本身不需要复杂后端,用 Pages 部署足够简单,也便于后期维护。

本篇文章记录的是从选择模板到完成部署的完整过程,主要包括本地运行、修改配置、推送到 GitHub、Cloudflare Pages 部署,以及绑定自定义域名等内容。

项目选择

个人主页使用的是一个基于 Astro 和 Tailwind CSS 的作品集模板。这个模板的结构比较简单,主要通过配置文件控制个人信息、技能标签、项目展示、经历和教育背景。

我选择这种模板的原因是它不需要从零开始写界面,整体风格比较简洁,适合做个人作品集。后续如果想要调整颜色、图标或者项目内容,也只需要修改少量配置和组件文件。

主页主要展示以下内容:

由于网站目前主要用于个人展示,所以没有加入复杂的后端功能。

本地环境准备

在 Windows 上搭建这个项目之前,需要先安装几个基础工具:

安装 Git 后,可以在 PowerShell 中检查:

git --version

安装 Node.js 后,可以检查:

node -v
npm -v

如果 PowerShell 提示无法运行 npm.ps1,可以临时使用:

npm.cmd install
npm.cmd run dev

或者修改当前用户的 PowerShell 执行策略:

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned

克隆模板项目

进入用户目录:

cd C:\Users\Treelang

克隆项目:

git clone https://github.com/RyanFitzgerald/devportfolio.git treelang-home
cd treelang-home

安装依赖:

npm.cmd install

启动本地开发服务器:

npm.cmd run dev

正常情况下,终端会显示一个本地访问地址,例如:

http://localhost:4321

打开浏览器访问这个地址,就可以看到本地预览页面。

修改个人信息

模板的主要内容集中在配置文件中,例如:

src/config.ts

在这个文件中,可以修改个人名称、标题、简介、技能、项目和经历。

例如,我将首页标题修改为:

title: "Developer & Builder"

这样不会过度强调学校或专业,而是更偏向个人开发者主页的表达方式。

个人简介也进行了调整,重点放在工程仿真、Android 开发、个人服务器和自动化实践上,而不是反复强调学校背景。

增加社交图标

模板默认支持 Email、GitHub、LinkedIn、Twitter 等链接。如果需要加入 Telegram 或微信图标,需要在配置文件和组件中增加对应字段。

例如,在 social 中加入:

telegram: "https://t.me/treelang_dev",
wechat: "/wechat.jpg",

然后在组件中增加对应的 SVG 图标。微信图标可以设置为点击后打开二维码图片,因此需要把二维码放到:

public/wechat.jpg

这样部署后可以通过以下路径访问:

https://treelang.me/wechat.jpg

构建项目

修改完成后,需要先在本地测试构建:

npm.cmd run build

如果没有报错,会生成:

dist

这个文件夹就是最终要部署到 Cloudflare Pages 的静态文件。

也可以本地预览构建后的效果:

npm.cmd run preview

推送到 GitHub

在 GitHub 新建仓库,例如:

treelang-home

然后在本地执行:

git remote remove origin
git remote add origin https://github.com/treelang-dev/treelang-home.git

git add .
git commit -m "init treelang homepage"
git branch -M main
git push -u origin main

如果推送时出现网络连接重置,可以先尝试:

git config --global http.version HTTP/1.1

如果仍然无法推送,也可以先使用 Cloudflare Pages 的 Direct Upload,直接上传 dist 文件夹。

部署到 Cloudflare Pages

进入 Cloudflare 后台:

Workers & Pages
→ Create application
→ Pages
→ Connect to Git

选择刚才的 GitHub 仓库后,构建配置如下:

Framework preset: Astro
Build command: npm run build
Build output directory: dist

部署成功后,Cloudflare 会生成一个默认访问地址,例如:

treelang-home.pages.dev

确认默认地址可以访问后,再绑定自己的域名。

绑定自定义域名

进入 Pages 项目的 Custom domains 页面,添加:

treelang.me

如果需要让 www.treelang.me 跳转到 treelang.me,可以在 Cloudflare DNS 中添加:

Type: A
Name: www
IPv4 address: 192.0.2.1
Proxy status: Proxied

然后在 Redirect Rules 中设置:

https://www.treelang.me/*

跳转到:

https://treelang.me/${1}

状态码选择:

301 Permanent Redirect

这样访问 www.treelang.me 时,就会自动跳转到主域名。

最终效果

完成后,个人主页可以通过以下地址访问:

https://treelang.me

页面主要包括个人简介、技能标签、项目展示、教育经历和社交链接。后续可以继续增加博客入口、项目详情页面、工具入口页面等内容。

总结

这次个人主页搭建主要完成了几个目标:使用 Astro 模板快速搭建页面,通过 Cloudflare Pages 实现自动部署,绑定自定义域名,并完成了基础的重定向配置。

整体过程并不复杂,比较适合个人作品集和技术主页。后续如果需要博客、文档站、短链接或 Webhook 接口,可以继续结合 Cloudflare Pages、Workers、Tunnel 和 Access 逐步扩展。


Edit page
Share this post on:

Previous Post
使用 AstroPaper 搭建个人技术博客
Next Post
How to configure AstroPaper theme