本文面向零基础小白,手把手教你从零搭建属于自己的私人博客网站,拥有自己的域名、服务器和完整源码,不再受限于第三方平台的审核与规则。


一、为什么要搭建私人博客?

在 CSDN、掘金、知乎等平台写博客固然方便,但你也可能遇到这些困扰:

  • 内容受限:CSDN 明确禁止"未经同意发布与平台服务无关的广告",掘金则对"任何推广(招聘、广告、SEO)方面的内容"零容忍,一经发现立即删除
  • 原创标识风险:微信公众号规定"营销宣传内容"不得声明原创,且推广内容需走官方互选平台
  • 数据不自主:平台算法调整、账号封禁都可能导致你的内容消失

私人博客的优势

  • ✅ 内容完全自主,无需担心平台审核
  • ✅ 数据自己掌控,可自由备份迁移
  • ✅ 可自定义域名,打造个人品牌
  • ✅ 技术实践,提升全栈开发能力

二、准备工作:选购云服务器

搭建博客的第一步,是拥有一台属于自己的云服务器。这里我推荐 阿里云 ECS,原因有三:

  1. 性价比高:新用户首年优惠力度大,最低几十元/年
  2. 生态完善:提供域名注册、备案、CDN 加速等一站式服务
  3. 文档丰富:遇到问题官方文档和社区支持都很到位

💡 福利:通过我的专属链接注册阿里云,可以享受额外优惠,还能获得本文配套的 个人博客完整源码

选购建议(小白版)

配置项 推荐选择 说明
实例规格 1核2G 或 2核4G 个人博客完全够用
操作系统 CentOS 7.9 / Ubuntu 22.04 主流 Linux 发行版,文档丰富
带宽 1-3Mbps 初期够用,后期可随时升级
存储 40GB SSD 系统盘,数据盘按需添加
地域 选择离你最近的节点 国内用户选华北/华东/华南

三、环境搭建:从零开始配置服务器

3.1 连接服务器

购买完成后,在阿里云控制台获取服务器的 公网 IProot 密码,通过 SSH 连接:

ssh root@你的服务器IP

首次连接会提示确认指纹,输入 yes 即可。

3.2 安装必要环境

以下命令在 CentOS 7.9 下执行(Ubuntu 用户将 yum 替换为 apt):

# 更新系统
yum update -y

# 安装 Java 17(后端 Spring Boot 3 需要)
yum install -y java-17-openjdk

# 验证安装
java -version

# 安装 MySQL 8.0
wget https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm
rpm -Uvh mysql80-community-release-el7-11.noarch.rpm
yum install -y mysql-community-server
systemctl start mysqld
systemctl enable mysqld

# 获取临时密码并修改
grep 'temporary password' /var/log/mysqld.log
mysql_secure_installation

# 安装 Nginx
yum install -y epel-release
yum install -y nginx
systemctl start nginx
systemctl enable nginx

# 安装 Node.js 18(前端构建需要)
curl -fsSL https://rpm.nodesource.com/setup_18.x | bash -
yum install -y nodejs

3.3 配置防火墙

# 开放必要端口
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --reload

四、部署博客源码

4.1 获取源码

本文配套的博客源码是一个 前后端分离 的全栈项目,技术栈如下:

前端:Vue 3 + Vite + Element Plus + Pinia
后端:Spring Boot 3 + MyBatis-Plus + JWT
数据库:MySQL 8.0

4.2 初始化数据库

将源码中的 init.sql 上传到服务器,执行:

mysql -u root -p < init.sql

4.3 部署后端服务

# 上传后端 jar 包到服务器
# 假设 jar 包名为 blog-server-1.0.0.jar

# 创建服务目录
mkdir -p /opt/blog-server
mv blog-server-1.0.0.jar /opt/blog-server/

# 创建 systemd 服务文件
cat > /etc/systemd/system/blog-server.service << 'EOF'
[Unit]
Description=Blog Server
After=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/opt/blog-server
ExecStart=/usr/bin/java -jar blog-server-1.0.0.jar
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF

# 启动服务
systemctl daemon-reload
systemctl start blog-server
systemctl enable blog-server

4.4 部署前端

# 在本地构建前端项目
cd blog-web
npm install
npm run build

# 将 dist 目录上传到服务器的 /usr/share/nginx/html/
scp -r dist/* root@你的服务器IP:/usr/share/nginx/html/

4.5 配置 Nginx 反向代理

编辑 /etc/nginx/nginx.conf

server {
    listen 80;
    server_name 你的域名或IP;

    location / {
        root /usr/share/nginx/html;
        index index.html;
        try_files $uri $uri/ /index.html;
    }

    location /api/ {
        proxy_pass http://localhost:8080/;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}
# 检查配置并重启 Nginx
nginx -t
systemctl restart nginx

五、访问你的博客

打开浏览器,访问 http://你的服务器IP,你应该能看到博客首页了!

默认管理员账号

  • 用户名:admin
  • 密码:admin123

登录后可以在后台管理文章、标签等内容。


六、进阶优化

6.1 绑定域名

  1. 在阿里云购买域名并完成实名认证
  2. 添加 A 记录指向服务器 IP
  3. 申请免费 SSL 证书(阿里云提供)
  4. 配置 HTTPS 访问

6.2 配置自动部署

使用 GitHub Actions 或 Jenkins 实现代码推送后自动构建部署,告别手动上传。

6.3 数据备份

# 定时备份数据库
0 2 * * * mysqldump -u root -p密码 blog > /backup/blog_$(date +%Y%m%d).sql

七、写在最后

搭建私人博客不仅是技术实践,更是对自己知识沉淀的一种投资。从选购服务器、配置环境到部署上线,每一步都是宝贵的学习经历。

如果你也想拥有自己的博客,不妨从一台云服务器开始:

👉 阿里云 ECS 新用户特惠
https://www.aliyun.com/minisite/goods?userCode=iakscw7s

通过该链接购买后,私信我即可领取本文配套的个人博客完整源码(含前后端代码 + 数据库脚本 + 部署文档),帮你省去从零开发的繁琐,直接拥有一个功能完善的博客系统!

源码功能亮点

  • 🎨 科技感深色主题门户首页
  • 📝 Markdown 编辑器 + 实时预览
  • 🔐 JWT 认证 + 权限控制
  • 🗂️ 博客增删改查 + 上下架管理
  • 🏷️ 标签筛选 + 关键词搜索
  • 📱 响应式布局适配移动端
    请添加图片描述

请添加图片描述
请添加图片描述

请添加图片描述
请添加图片描述

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐