1. 为什么要写博客而不是发朋友圈我的第一篇博客这个标题看起来简单但背后牵扯的问题比大多数人想象得多。你打算记录什么、写给谁看、准备投入多少精力这三件事如果不提前想清楚博客大概率会变成三个月就断更的僵尸站点。我最早开始写博客的时候想法特别朴素把自己折腾服务器、学编程过程中踩过的坑记下来免得下次重蹈覆辙。后来发现这事确实值——很多问题我隔半年再遇到翻自己博客五分钟就能恢复记忆而别人可能要在搜索引擎里翻两小时。这就是博客最核心的价值它是你的第二个大脑一个能随时调取的外部记忆库。至于说现在谁还看博客这种问题没必要纠结。博客和短视频、朋友圈的定位本来就不一样朋友圈是社交货币发出去是为了获得即时反馈博客是沉淀记录写出来首先是给未来的自己看其次才是给有同样困惑的陌生人看。哪怕一篇文章只有一个读者只要那个读者真的需要这篇内容就有存在的价值。这篇内容适合谁想搭建自己个人站的零基础新手、写了几天文章就坚持不下去的间歇性博主、以及把博客当成个人品牌基座的内容创作者。我会从最底层的取舍逻辑讲起一步步拆解博客搭建、内容规划、写作发布这些环节。文章后半部分有大量踩坑记录这些都是文档里不会写的东西希望对你有用。2. 先定方向再谈技术写博客前必须想清楚的三件事2.1 用定位决定平台选型别被工具绑架很多人第一反应是我要选个什么博客系统然后一头扎进 WordPress、Typecho、Hexo 的对比里。我建议倒过来先回答三个问题——你的博客是给谁看的、主打什么内容、愿意花多少时间维护。如果你希望登录后台就能写、有评论有统计、界面好看那动态博客更合适最典型的就是 WordPress。它全世界市场份额最高插件主题无数几乎你能想到的功能都有现成的。但代价是需要一台服务器虚拟主机也算、需要处理数据库备份、需要定期更新版本防止漏洞。这些东西对程序员来说不算事但对普通写作者来说每次后台弹更新提示都是一次心理负担。如果你要的是专注写作、加载快、不用管服务器静态博客是更好的选择。Hexo、Hugo、VuePress 这类工具把文章写成 Markdown 文件本地生成一堆 HTML 文件推到托管平台就完成发布。没有数据库、没有后台、没有漏洞需要打补丁安全性和速度都天生占优。缺点是需要接触命令行对没碰过终端的人有一定门槛但说实话这个门槛大概花两三个小时就能跨过去。还有一类是什么技术都不想碰只想发内容的朋友那用 Notion 搭配第三方发布工具、或者直接用语雀、掘金、知乎这类平台都行。博客圈的洁癖患者可能会说这不算真正的博客但我不这么想——工具是服务于表达的只要能稳定输出内容用什么写根本不重要。2.2 内容方向决定了你能坚持多久关于内容方向我见过太多人一开始就定了个大而全的规划我要写技术、写生活、写读书笔记、写影评、写旅行日记。结果写了一周就发现每天光是想今天写哪个主题就耗光了意志力。博客断更的核心原因通常不是懒而是方向太模糊导致每次写之前都要做一轮决策。更可持续的做法是选一个你每天都在做的事把它作为博客的主线。比如你做前端开发就写每天遇到的前端问题你爱做饭就写每周尝试的新菜谱和失败记录你读专业书就写读书时想到的、和工作有关联的观点。主线之外的内容当然可以发但主线决定了你的博客是什么也决定了阅读者在收藏夹里怎么归类你。我当时给自己定的方向很窄只写我在个人服务器上折腾出来的经验包括环境配置、服务部署、性能调优这些。这个方向窄到我都怀疑会不会没人看但恰恰因为它窄我的每一篇文章都是真实操作整理出来的搜索流量反而稳定。到今天为止给我博客带来最多阅读量的是最初写的一篇关于服务部署踩坑记录——那篇文章的搜索量至今没有断过。2.3 维护成本预估算清楚时间账再做决定技术选型还有一个容易被忽略的维度长期维护成本。很多新手只看到搭建那一刻的兴奋忽略了文章发布之后的持续投入。我来给你算一笔实际的时间账。如果你用 WordPress除了写文章花的时间每个月至少要留出半小时做核心和插件更新不定期还要检查一下网站有没有被扫描攻击的迹象、数据库有没有异常增长。静态博客省心很多——写完推到托管平台之后基本不用管本地文件就是所有备份。但从想写到发布中间每一步都靠命令行对不熟悉终端操作的人来说每一篇都会比 WordPress 多花十到十五分钟。这笔账怎么选都没有错关键是你得诚实面对自己能分配的时间。如果你每周能自由支配的业余时间少于五小时那我强烈建议直接用托管平台发文或者用最小成本的静态博客方案把精力省给内容本身。博客死在维护太累上是最大的浪费。3. 动手搭建个人博客完整流程与核心参数讲解3.1 静态博客方案选型Hexo 还是 Hugo考虑到我的第一篇博客这个场景我默认你大概率不是服务器运维老手所以我只聊两个对新手最友好的静态博客工具Hexo 和 Hugo。Hexo 基于 Node.js 生态中文资料非常丰富主题数量多、审美在线社区提问基本都能搜到答案。它的工作机制是你写 Markdown 文件它根据你选的主题把文章渲染成静态页面然后你用一条命令部署到托管平台。Hugo 是 Go 语言写的单二进制工具渲染速度极快几十篇文章几乎是毫秒级生成而且安装只需要下载一个文件不需要额外运行时。缺点就是主题数量不如 Hexo 多部分主题的文档偏英语。我自己的选择是 Hexo。原因很简单它有一个主题叫 NexT整体风格非常干净侧边栏可以放标签、分类、归档、友链该有的都有不需要我自己去折腾前端代码。而且 Hexo 在部署时对托管平台的兼容性很好一个命令就能把整站推上去对不熟悉 Git 命令的人来说这条链路的学习成本是最低的。以下是两个工具的核心对比你根据自己的偏好直接选就行对比项HexoHugo运行环境Node.js无依赖单文件生成速度中百篇文章秒级极快千篇毫秒级主题生态丰富中文主题多相对少多数偏英文上手难度中等需装 Node.js低下载即用适合人群喜欢折腾、想要高颜值主题追求极简、文章量大文档成熟度中文资料多英文文档为主3.2 本地环境准备与初始化的每个细节选定 Hexo 之后本地环境准备是第一步。前面说了 Hexo 基于 Node.js所以这台电脑上得先有 Node.js 环境。这里有一个新手最容易踩的坑直接下载了最新版 Node.js结果某个 Hexo 插件不兼容新版本排查半天不知道哪出了问题。稳妥的做法是选择 LTS长期支持版本也就是官方标记为推荐安装的那个稳定版本而不是最新的尝鲜版。Node.js 安装完成之后打开终端先确认版本号已经生效输入这行命令node -v能正常输出版本号说明环境没有问题。接着全局安装 Hexo 脚手架工具npm install -g hexo-cli安装过程可能持续一两分钟取决于网络状况。终端界面长时间不动不要慌它只是在下载依赖包。装完之后找一个你觉得舒服的目录执行初始化命令hexo init my-blog这个命令会创建一个名为 my-blog 的文件夹里面是 Hexo 的完整骨架。然后进入这个目录装上项目级别的依赖cd my-blog npm install到这里一个最基础的空博客已经在本地生成了。你可以先跑一下本地预览看看默认的样子hexo server启动之后浏览器打开http://localhost:4000就能看到默认站点的首页。看到那行 Hello World 就说明整个链路通了。我到现在都记得自己第一次在 localhost:4000 看到页面时的心情——虽然只是一个什么都没配置的默认页但那种我拥有了一个网站的感觉确实很有冲击力。3.3 配置文件参数详解站点信息决定全局初始化完成之后在 my-blog 文件夹根目录下你会看到一个_config.yml文件。这是整个博客的全局配置里面最核心的就是站点信息部分。这部分配置直接决定搜索引擎怎么描述你的站点、订阅器怎么显示你的博客名称值得认真填。# 站点信息 title: 你的博客名称 subtitle: 一句简单描述 description: 用一句话告诉搜索引擎和读者这个博客主要写什么 keywords: 关键词1,关键词2,关键词3 author: 你的署名 language: zh-CN timezone: Asia/Shanghaititle 会被显示在浏览器标签页和站点首页顶部建议直接用你的品牌名或真实笔名。description 是 SEO 层面最重要的字段它会被搜索引擎抓取用于在搜索结果里展示摘要。keywords 在搜索引擎里的权重已经降低了但建议还是填上算是很便宜的优化。language 必须改成 zh-CN否则默认的主题文字和日期格式都会以英文显示中国读者看了会显得很别扭。时区建议设成 Asia/Shanghai不然你发布文章的时间戳会跟你的实际发布时间差好几个小时归档页的时间轴会错乱。另外还有一个容易忽略的参数url。默认值是你的本地地址等到后面部署到托管平台之后一定要把它改成你的正式域名。搜索引擎如果发现站内所有链接都指向 localhost那抓取就会出现大问题。这个参数我亲眼见过朋友漏改上线一个月谷歌一条都没收录排查了好久才发现根源在这。3.4 主题安装与个性化调整的实操细节默认的 Hexo 主题叫 landscape长得很朴素。要装我心里的白月光 NexT直接在你的博客目录下执行npm install hexo-theme-next装好之后在_config.yml里找到theme字段把它改成next然后重启本地服务主题就生效了。NexT 主题用起来最顺手的地方是它把自定义选项都集中在一个文件里路径在themes/next/_config.yml从菜单开启到侧边栏显示什么全部在里面调。个性化调整这一步最容易让人上头我提醒一下控制投入时间。NexT 默认支持菜单导航、打赏、代码块高亮、数学公式、评论系统这些功能在主题配置文件里展开就能看每条都有注释。骨架搭好之后挑两三个你真正需要的打开就够了比如归档菜单和标签页面。我看过不少博客作者把大量时间花在换字体、调动画、改配色上面文章却一篇都没写。主题只是集装箱里面的货物才是读者来看的东西。我建议把主题调到一个看起来不丑、读起来舒服的状态就收手剩下的精力全部留给内容。3.5 托管部署把博客从本机搬到公网本地跑得再欢也只有你自己能看到。把博客发布到公网这一步是用 Hexo 过程中最让人有成就感的一步也是最常出问题的一步。新手入门最常见的路径是使用托管平台结合 Git 工作流来发布。一个可行的路线是用国内的代码托管服务创建同名仓库然后为这个仓库开启 Pages 服务。Hexo 的部署机制其实很简单它把生成的静态文件推送到你仓库的指定分支托管平台再把那个分支作为网页展示出来。整个流程你只需要在_config.yml里配置部署信息然后执行hexo clean hexo deploy这两步就会自动把整站推上去。前提是 Git 的账号认证已经配好。这里有几个我实际操作中总结的细节写出来可以帮你少走很多弯路。第一首次执行hexo deploy之前先确认已经用命令行完成 Git 的全局用户名和邮箱配置很多报错都源于缺少这两项。第二如果发布后访问是 404不要急着怀疑代码先检查仓库 Pages 服务是否设置过分支这是最容易忘记的一步。第三推送成功但页面内容没更新时等一两分钟再刷新托管平台对静态页面的缓存策略一般不是即时的多次强制刷新会看到新内容。上线之后记得回到_config.yml把 url 改成你的正式访问域名然后重新部署一次。同时建议去开发者工具里确认页面标题和描述是否正确显示这直接关系到后续搜索引擎的收录质量。4. 写好你的第一篇文章从标题到正文的拆解4.1 认识 Front Matter每篇文章的身份信息在 Hexo 里写文章不是打开网站后台打字而是在source/_posts目录下新建 Markdown 文件。每个文章文件的开头都有一段以两个---包起来的元数据叫 Front Matter它定义这篇文章的属性。我第一次用 Hexo 时完全不懂这事结果文章发布出来没有标题也没有日期分类归档也不认识它后来才明白是这里没写对。新手第一篇博文的 Front Matter 用这些字段基本就够了--- title: 我的第一篇博客 date: 2025-01-15 10:30:00 tags: - 随笔 categories: - 随笔 ---title 很关键它既是文章标题也会成为访问链接的一部分。date 代表发布时间Hexo 支持你自由填所以你可以做的一件事是今天就写下一篇未来发布的文章让博客在你忙到没空更新的日子里也有内容输出。tags 和 categories 是分类信息建议从第一篇文章就开始认真打标签等文章数量上来之后归档页的体验完全取决于这个基础打得怎么样。4.2 第一篇文章写什么才不算浪费我知道你现在最关心的是第一篇到底写什么。我的建议是别写那些放之四海皆准的东西什么如何坚持学习时间管理分享我的年度总结——这些东西已经太多了而且跟你的个人经历和博客主题未必有多少关联。第一篇博客最值钱的定位是立下锚点。你可以写你搭建这个博客的完整过程和踩过的坑这就是一篇真正属于自己的原创内容将来任何人访问你的第一篇博客都能立刻知道你是谁、你在干什么、你遇到了什么问题。我当时的第一篇博文详细记录了自己从零到一搭服务器的全过程包括具体命令和报错信息后来有个从未见过面的网友照着那篇文章成功搭出了自己的站点那种感觉比阅读量破千还有成就感。实在没头绪的时候有一个标准选择你上周真实花时间解决过的一件事把从问题出现到最终解决的全过程写下来。哪怕这件事很小比如怎么把路由器改成了 AP 模式才解决了全家信号死角它也是属于你的真实经验对恰好遇到同样问题的人来说这就是最有用的内容。4.3 段落结构与行文节奏让读者愿意读完博客是给屏幕读者看的跟写论文完全不同。屏幕阅读的特点是扫读——读者会先看标题、加粗字、列表再决定要不要深读。所以第一篇文章的结构请遵循结论先行、每段一个观点、长段落拆短这三个原则。开头两句话内告诉读者这篇文章要解决什么问题。正文按背景 → 操作 → 结果 → 总结的顺序排布。每个自然段别超过五行随手分段比攒一大坨好得多这是移动端阅读的基本礼仪。重要的提示、命令、注意事项用代码块、列表、引用块单独展现让扫读的读者也能快速抓住关键信息。行文节奏上我个人的习惯是严肃的步骤之间穿插一两句真实感受或自嘲。不是刻意搞笑而是让文章有人味。读者知道你是在分享经验不是在写说明书。博客相比技术文档的独特优势就在于这个人味——你当年的困惑、你的试错、你的顿悟这些是教程里找不到的。4.4 发布与检查发布不是结束是开始写完文章执行hexo clean hexo deploy或你的发布命令把文章推上线。但发布按钮点下去工作其实只完成了一半。我每次发布新文章后保留一个固定习惯先把站点从头到尾读一遍重点是标题显示、分类归档、上一篇下一篇的跳转。然后是移动端检查把文章链接发到自己微信对话框在手机浏览器上打开看看排版确认没有奇怪的换行或表格溢出。第三步是检查一下标签页确认这篇新文章已经被正确归入分类首页的摘要显示是否正常。这几个小动作加起来只需要三五分钟但能避免很多尴尬情况。我见过太多人发布完就关掉浏览器结果文章里图片裂了一周才发现。自己都不读的文章凭什么指望读者耐心读下去。5. 写得舒服比坚持更重要日常写作流程与方法5.1 建立一套固定的写作动线博客最难的永远不是技术是持续写。我见过太多朋友兴致勃勃搭好站写了三篇就再也不动了。要破解这个问题我的经验是把写博客这件事拆成几个最小的动作让每一步都轻松到无法拒绝。我自己的动线是这样的灵感来了不打开编辑器先在手机备忘录里写三行提纲到了周末的写作时间把提纲补成初稿这个过程要求自己只求完成不求完美第二天再做一次修改和格式化控制在二十分钟内最后统一处理图片配图发布。整个过程被拆成了四天四个小任务没有哪个环节需要一次性投入超过半小时这就是我能坚持下来的核心原因。5.2 素材收集让灵感不再用完就没很多人断更的另一个原因是没灵感。灵感确实会枯竭但依赖灵感的写作本身就很危险。更靠谱的做法是把素材收集变成一个日常动作。我自己在手机里建了一个专门的备忘录凡是平时聊天中说出这个方法真好用、工作中为某个问题查了半小时资料、或者刷到一句戳中自己的话就顺手记下来备注当时为什么觉得它值得记。这个方法运行三个月之后效果很惊人备忘录里的素材足够写二十篇文章。而且你会发现素材之间有共性——那些反复出现的主题才是你真正擅长和感兴趣的方向。把它们做深博客的定位会自动变得越来越清晰。5.3 发布节奏稳定比高频重要一万倍在博客的世界里质量很重要但稳定是另一个被严重低估的维度。我不建议你追求日更——那会让写作变成负担很快耗尽热情。我更建议每周或者每两周固定一个发布时间哪怕只写一篇 600 字的小记录也比攒一个月写一篇 5000 字的长文对习惯的养成更有效。稳定的输出会让读者建立期待也会让你自己建立到点就写的节奏感。慢慢地写博客不再需要意志力它变成一个像刷牙一样的固定动作。到那时候你的博客才是真正意义上活的。6. 常见问题实录新手最容易踩的五个坑6.1 部署后 404 页面的排查顺序404 是静态博客新手最常见的报错。我的排查顺序是先确认托管平台的 Pages 服务有没有正确开启并把服务指向了你部署时推送的那个分支。然后检查本地生成后的public文件夹用浏览器直接打开public/index.html如果本地能开说明生成正常问题出在推送或平台配置。最后看一眼_config.yml里的 url 配置有没有包含奇怪的子路径。按这个顺序走大部分 404 都能解决。6.2 页面显示出来了但样式全乱了文章能看但整个布局稀碎这个问题通常是路径问题引起的。Hexo 默认的站内资源引用是相对路径还是绝对路径会在你修改 url 之后发生变化。你把字体、图片、CSS 的路径配置检查一遍尤其是文章里直接写的图片路径。有一个小经验图片路径统一用 ./ 开头往往比绝对路径更不容易出幺蛾子但需要你测试本地和线上是否一致。6.3 图片为什么没法显示本地预览一切正常部署上去图片裂了这几乎是每个静态博客新手都绕不过去的一关。根源通常不是代码问题而是一是文件名有中文或空格浏览器能处理但服务器未必能正确处理编码。二是没加post_asset_folder相关配置导致博客不知道去哪找图片。三是你推送时改动了图片路径但本地没有重新生成。我的习惯是把所有图片第一时间重命名为纯英文字母加数字放进每篇文章同名的文件夹里用相对路径引用这样本地和线上表现完全一致。6.4 怎么让搜索引擎收录自己静态博客因为没有后台提交入口收录速度比动态博客慢这是正常现象。要在尽短时间内让搜索引擎发现你有几个靠谱做法在主流搜索引擎的站长平台提交站点地图把博客地址放到适合的网站聚合页面并保持稳定访问如果你有社交媒体账号每次发布后在个人主页同步链接。这个过程急不来百度、谷歌都有自己的抓取节奏一般一个月到三个月之内会有第一批收录。6.5 评论功能还需要自建服务器吗静态博客本身就是无服务器的产物但你想要读者能留言这就比较麻烦。最朴素的办法是用第三方评论服务注册后在页面上插入一段脚本就行。但需要注意的是评论区在部分主流平台的要求下需要备案用不需要备案的国外评论服务可能要面对访问缓慢的问题这就看你的目标读者群体主要在哪个地区。如果你短期内完全不在乎评论区——我的建议是可以先不开评论。博客的交流不一定非要发生在评论区读者通过邮箱、社交平台找到你往往交流质量更高。等文章数量多了再补评论功能也完全来得及。7. 写博客这几个月我最大的体会看到这里博客已经搭建完成、第一篇文章也准备上线了。我要说的是搭好博客不算是真正的开始真正的开始是你写下第一篇文章、发布出去、然后第二天发现它真的可以被任何人在任何地方访问的那一刻。我的第一篇博客文章其实写得很烂标题冗长行文啰嗦配图糊到不行。但我至今不舍得把它删掉因为它是这个博客的起点。它记录了我在某个晚上面对一屏幕报错信息一步步查资料、试错、成功的过程——那个过程本身比任何华丽的文章都更有价值。后来我会偶尔回头翻翻那篇文章发现自己当时连个配置文件的注释都看不太懂现在却能给别人讲明白整个部署链路这种回头看的更新迭代快感是很独特的。你不需要等到准备好了再开始写现在就是最好的时间。把这篇发言当作你的第一篇博客去完成它。你会发现当你把一个想法完整地写下来它已经开始改变你看待问题的方式了。这就是博客的魔法试试看吧。
