从0到1:我的个人博客建站技术复盘
作为一名大一计算机新生,搭建个人博客不仅是一次实践,更是一次从理论到实战的完整Web开发学习。这篇文章将详细复盘整个建站过程中的技术选型、踩坑记录和解决方案,希望能给同样想从零开始搭建网站的同学一些参考。
一、技术栈选型
1. 服务器与环境
- 云服务器:阿里云ECS(轻量应用服务器),选择CentOS 7.x系统,配置1核2G,完全满足个人博客初期的访问需求。
- 面板工具:宝塔面板,极大简化了Nginx、MySQL、PHP的环境部署流程,大幅降低了新手运维的门槛。
- Web服务:采用经典LNMP组合——Nginx 1.20 + PHP 7.4 + MySQL 5.6,兼顾兼容性、稳定性与运行效率。
2. 博客系统
- CMS选择:emlog Pro,轻量开源的PHP博客系统,适配个人博客场景,二次开发成本低,对新手十分友好。
- 选型考量:对比WordPress,emlog更轻量化,数据库结构简单,无需复杂配置即可快速上线,同时支持插件和模板扩展,满足后续功能升级需求。
二、核心配置与踩坑记录
1. 域名与SSL配置
- 域名解析:在阿里云域名控制台添加A记录,将
coldish.cn指向服务器公网IP,TTL设置为300秒,确保解析快速生效。 - SSL证书:通过宝塔面板申请Let's Encrypt免费SSL证书,勾选域名后一键颁发,随后开启强制HTTPS跳转,解决浏览器“不安全连接”提示。
- 踩坑点:开启强制HTTPS后出现Nginx 502错误,排查后发现是配置文件冲突,通过重启Nginx服务并重新生成配置文件,问题顺利解决。
2. 伪静态与链接优化
- 链接格式:选择目录式链接(
/post/1),相比传统文件式链接,更符合现代SEO规范,也更简洁美观。 - 伪静态配置:在宝塔面板的网站设置中,直接选择
emlog伪静态模板,自动生成Nginx规则,避免了手动编写规则的语法错误。 - 踩坑点:初期未配置伪静态,导致文章链接访问404,重启Nginx让伪静态规则生效后,链接恢复正常。
3. 数据库修复(核心踩坑)
- 问题现象:安装Sitemap站点地图插件后,出现SQL报错:
Unknown column 'alias' in 'field list'。 - 根因分析:emlog数据库表结构与插件版本不兼容,
emlog_tag标签表缺少插件依赖的alias字段。 - 解决方案:通过宝塔终端登录MySQL,执行以下SQL语句手动添加字段:
ALTER TABLE `emlog_tag` ADD COLUMN `alias` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '标签别名' AFTER `tagname`;
4. 备案合规操作
- ICP备案:通过阿里云备案系统提交主体与网站信息,审核周期3-5个工作日,审核通过后,在博客页脚添加完整备案号:
京ICP备2026008585号-1。 - 公安备案:在全国互联网安全管理服务平台提交主体和网站信息,目前处于待审核状态,待通过后将补充公安备案号,实现完全合规。
三、SEO优化配置
1. 站点地图(Sitemap)
- 安装emlog的Sitemap插件,配置为包含「文章」「分类」核心内容,自动生成站点地图:
https://coldish.cn/sitemap.xml。 - 已将站点地图提交至百度搜索资源平台,加速搜索引擎对博客内容的收录。
2. 全站TDK配置
为适配搜索引擎检索,完成全站标题、关键词、描述的核心配置:
- 标题:
Coldish的学习日记 - 高校专项计划分数线 | 学习干货分享 - 关键词:
高校专项计划,高校专项分数线,计算机学习,建站教程,个人博客 - 描述:
专注分享高校专项计划分数线、报考攻略及编程、运维学习干货,记录个人成长与开发日常。
3. Robots.txt配置
编写爬虫检索规则,禁止抓取后台及敏感目录,同时指定站点地图位置:
User-Agent: *
Allow: /
Disallow: /admin/
Disallow: /include/
Disallow: /cache/
Sitemap: https://coldish.cn/sitemap.xml
四、后续优化方向
- 模板定制:当前使用emlog默认模板,后续计划学习HTML、CSS、JavaScript,定制符合个人风格的博客主题。
- 性能优化:开启Nginx页面缓存、压缩静态资源(图片、CSS、JS),进一步提升博客页面加载速度。
- 功能扩展:添加个性化评论系统、文章精准搜索、分类筛选等功能,优化读者浏览体验。
- 数据备份:配置宝塔自动备份策略,定期备份网站文件与数据库,杜绝数据丢失风险。