个人网站搭建选型

1,149 阅读5分钟

以下文章来源于古时的风筝 ,作者风筝

搭建静态网站到底有多少种可选方案,每一种都高效、美观、简洁,都值得拥有。

以个人博客说,大部分情况只是要界面简洁,有简单导航,有文章列表,能够清晰的阅读文章就好了

VuePress

官网:v2.vuepress.vuejs.org/zh/

VuePress 大概是下面这几个中最有名气也是用的最多的了,由名字就能看出来,它是 Vue 开发的,官方定位是 Vue 驱动的静态网站生成器。

图片

应该没有一个开发者没见过类似于下面这样的网站吧。能够流行起来的一大原因可能就是它的这个样式看上去很舒服,比较适合国人的审美。

图片

上手简单,几乎不需要懂前端知识,照着文档来就行了,除非你要进行定制开发。

为什么不用 WordPress

在以前搭建一个个人博客或者一个静态网站(例如公司官网、产品网站)还不是很方便,如果你不会自己写前端,那恐怕只有 WordPress 可选。但是用 WordPress 对服务器要求还是挺高的,因为 WordPress 不是纯前端的,它是 PHP 写的,需要配置 MySQL,成本一下就上去了。

WordPress 配置过多,以我们写技术博客为例,要支持 Markdown、要支持代码高亮,都要安装对应的插件。

对于我来讲,还有一个我坚决放弃它的原因,就是我懒啊。我平时写东西都是在客户端 Markdown 编辑器里,而如果我要发布到 WordPress 搭建的网站中,我还要打开WordPress 后台,然后在页面上填上标题、粘贴写好的 Markdown 内容,这跟要我命有什么区别。

而对于下面要介绍的这几种静态网站来说,直接把写好的 Markdown 文件放到特定目录中,然后编译就可以了。对于频繁更新的网站来说,这个编译的过程完全可以自动化进行。

Astro

官网:astro.build/

Astro 是这两年迅速发展的一款 CMS 框架,可以用来搭建博客、作品集、文档、落地页、SaaS、营销、电子商务等等。

Astro 相对于很多其他的静态框架更加复杂一点,它有一套自己的模板,类似于 Vue 和 React ,还有自己的约定路由等规则。而且它是与框架无关的,更像一个高级的、功能丰富的脚手架,你可以在它上面集成 Vue、React 进行定制开发。所以,你可以把它当作一个开发框架,类似于 Next.js 那样。

当然,如果你只想用它已有的功能和模板,也完全能够搭建个人博客、官网这些,一点问题没有。而且,官方有丰富的模板可供选择,什么文档类的、博客类的、产品介绍类的,应有仅有。

模板地址:astro.build/themes

图片

如果不定制开发的话,上手比较简单,照着官网教程安装一下 NodeJS,找一个模板配置一下就可以了。

Hugo

官网:gohugo.io/

Hugo 是一个快速、现代且高度可配置的静态网站生成器。它是使用 Go 语言开发的,并以简单易用、高效构建和渲染静态网页而闻名。Hugo 的设计目标是提供一个简洁、高性能的工具,以便开发人员可以轻松创建和管理各种类型的静态网站。

图片

Hugo 官网提供了几百种主题样式可供选择。themes.gohugo.io,到上面选一个你喜欢的风格。

图片

我的博客就是用 Hugo +  Pages 搭建的,具体的搭建教程在这里:www.moonkite.cn/category/ot…

Hexo

官网:hexo.io/zh-cn/index…

和 Hugo 很类似,一共四个字母,俩字母都一样。Hexo 是用 NodeJS 写的,丰富的主题同样支持个人博客、文档、产品官网、落地页这些。

图片下面这几个基本上就是专门的文档、博客类,上方简单导航,左侧目录导航。

VitePress

VitePress 和 VuePress 有啥区别呢,看了官网介绍才知道,这俩都是 Vue 团队开发的,只不过 VuePress 比较早,而且是基于 Webpack 的,而 VitePress 是 VuePress 的兄弟版,基于 Vue 和 更快的 Vite。而且官方之后会侧重 VitePress。图片看一下它的样式,和 VuePress 差不多,也是一贯的 Vue 风格。

图片

Docusaurus

官网:docusaurus.io/zh-CN

Docusaurus 是 FaceBook 开源的,用 React 实现。如果熟悉 React 技术栈的,可以用 Docusaurus 搭建博客,方便自己的一些个性化定制。

图片

最终的文档结构是这样

图片

说实话,这个效果感觉没有  VitePress 那么顺眼,可能是 VuePress 生成的网站太多了的缘故。

Nextra

官网:nextra.site/

Nextra 是基于 Next.js 的静态文档和博客框架,Next.js 是 React 官方首推的 React 脚手架项目。

图片

docsify

官网:docsify.js.org/#/zh-cn/

这个框架更简洁了,什么多余的东西都没有,就是左侧导航,右侧内容,连上方导航条都没有。使用起来更是超级简单,应该是这几种里面最简单的了。

有时候本来也不需要那么多花里胡哨的东西,对于单纯某一知识库来说,已经足够了。

图片

最后

以上是几个比较简单好用的 CMS 框架。到底用哪一个还要综合考虑,比如:

  • 公司官网、落地页之类的就要考虑 Astro、Hugo、Hexo 这种带有丰富模板的,而知识、文档类的就随意了;
  • 根据自己的需求,如果有定制化需求,那就要看你熟悉的领域了,比如你擅长 React,那就要用支持 React 的,比如Docusaurus、Nextra 或者 Astro,如果你熟悉 Vue,那就用 VitePress 或 VuePress;

大部分都可以使用 GitPages 或 Vercel 来免费部署,只要你准备一个域名就可以了。但是鉴于网络的问题,最好还是部署在国内的服务器上,这就需要掌握一点点运维知识了,例如 Nginx 简单配置一下,HTTPS 证书配置一下。