建站指北

搭建个人网站的一些准备工作

前端网站

目录

  1. 写在前面
  2. 编写网站代码
  3. 准备服务器和域名
  4. 准备部署
  5. 准备证书

写在前面

搭建的个人网站已经平稳运行半年了,有一些配置做好后基本就不会动了,所以我大概率会在未来忘记如果要做一些修改的话应该怎么做,以及兼容方面的问题。所以产出这样一篇日志来记录一下当初建站时的一些行为和坑,方便以后的自己在上面继续堆料,也方便看到这篇的你来作为一个小小的指南使用。这个网站首页是作为个人学术主页用的,所以常规的展示了一些信息,搭建起来算是相当简单了,再加上大模型的辅助,几乎不会像2019,2020年那样迷迷糊糊啥都不知道怎么做了。

编写网站代码

首先你要把网站的代码写好,现在用npm开发可以快速的查看你的网站渲染出来的样子,还是挺方便的。我用的是astro,这个框架的优点就是学习简单,上手快,理解起来不复杂,文档也比较详细,对MD和各种插件的支持很好。当然,他主打是展示静态内容,所以如果你想增加一些动态的内容,可能就不那么合适了。astro写一些复杂的JS逻辑还是挺蛋疼的。

准备服务器和域名

我是在阿里云上双十一大促的时候买的服务器。现在的云服务厂商很多,可以等618或者双十一的时候购入一台低性能的服务器,毕竟你的网站也不需要抗住瞬时的高并发请求。然后就是购买一个域名,你也不想别人只能通过IP来访问你的网站吧。这些都准备好后就可以把域名绑定到服务器上了。这个通过DNS解析就可以,把你的域名解析到你的服务器IP就好。

准备部署

部署这一步我是依靠GitHub Action做的,每次有代码更新的时候就会触发一个自动构建的任务,任务会先在GitHub的机器上对项目做构建,构建好后使用dockerfile打包成一个镜像,然后把镜像推送到阿里云的镜像仓库中,最后从GitHub的机器上访问前一步购买的服务器。这里可以通过阿里云的内网来拉去镜像仓库中最新打包好的项目,然后启动就好了。

准备证书

证书决定了你访问的时候是http还是https,搞一个免费的证书也很简单。不过说实话,我对证书这部分不太了解,主要还是看网上的手册来做的。我使用的是开源软件acme,它能够自动的生成,验证,更新你的证书。

我使用的是DNS自动验证。你可以在acme的wiki里找到相应的说明。我操作的流程是在阿里云上创建了一个新的accessKey,然后这个accessKey有修改云DNS的功能。acme就通过我的key和secret每三个月自动通过阿里云的DNS来对证书进行验证和更新。你的证书搞定后记得同时修改nginx的配置文件。

IMPORTANT

文章写于2025.11.13,以后阿里云的权限控制策略可能会发生改变,我记得我六个月前建站的时候看到的一些教程就是老的权限控制策略,在阿里云上的入口和操作逻辑都有一些不一样的地方。

本来我还打算更新一下acme这个软件的,但是当时好多操作的过程我都不太记得了,现在也不太敢随意的修改这部分内容。这一些列步骤做好之后,你的网站应该就可以像一个正常的网站一样上线了