阅读 59 | 👍 2
👍 点赞一篇真正从 0 到上线的完整教程,适合新手和进阶用户
支持宝塔面板 / Docker / 本地环境
在开始之前,你需要准备以下环境:
Debian 11 / 12(推荐)
Ubuntu 20.04+
CentOS 7 / 8
安装宝塔(Linux):
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh
安装完成后,通过浏览器访问面板地址登录。
进入 宝塔软件商店,安装以下组件:
Nginx(推荐最新版)
MySQL 5.7 或 8.0
PHP(推荐 7.4 或 8.0)
pdo
pdo_mysql
mysqli
fileinfo
路径:宝塔 → 网站 → 添加站点
填写信息:
域名:你的域名 或 IP
根目录:默认
PHP版本:7.4
数据库:勾选创建
👉 记住数据库信息:
数据库名
用户名
密码
进入网站目录:
/www/wwwroot/你的域名/
删除默认文件:
rm -rf index.html
上传博客源码压缩包后执行:
unzip blog.zip
如果出现多一层目录:
mv blog/* .
rm -rf blog
宝塔 → 数据库 → 导入
选择源码中的:
blog.sql
导入成功后会自动生成所有数据表。
编辑文件:
/www/wwwroot/你的站点/includes/db.php
修改为:
$host = "127.0.0.1";
$dbname = "你的数据库名";
$username = "数据库用户名";
$password = "数据库密码";
如果你使用 Docker:
必须使用:127.0.0.1
不要写:mysql
否则会报错:
php_network_getaddresses: getaddrinfo failed
宝塔 → 网站 → 伪静态
填入:
location / {
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php?s=$1 last;
}
}
如果你的网站在 /blog 目录运行,可能会出现 404。
执行以下命令修复:
grep -rl '"/blog/' . | xargs sed -i 's|"/blog/|"/|g'
进入数据库执行:
CREATE TABLE IF NOT EXISTS site_stats (
id INT PRIMARY KEY AUTO_INCREMENT,
total_views BIGINT DEFAULT 0,
site_start_time INT NOT NULL
);
INSERT INTO site_stats (total_views, site_start_time)
VALUES (0, UNIX_TIMESTAMP());
CREATE TABLE IF NOT EXISTS online_users (
id INT PRIMARY KEY AUTO_INCREMENT,
session_id VARCHAR(255),
last_active INT
);
CREATE TABLE IF NOT EXISTS visits (
id INT PRIMARY KEY AUTO_INCREMENT,
visitor VARCHAR(255),
last_visit INT
);
设置目录权限:
chmod -R 755 /www/wwwroot/你的站点
如果上传图片失败:
chmod -R 777 uploads
如果打开网站直接下载 PHP 文件:
👉 检查 Nginx 配置是否包含:
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
浏览器打开:
http://你的IP 或 域名
如果成功,你会看到博客首页。
后台地址:
/ admin
登录账号需要自行创建。
PHP 执行:
echo password_hash("123456", PASSWORD_DEFAULT);
将生成的密码写入数据库。
getaddrinfo failed
✔ 解决:
host 改为 127.0.0.1
✔ 原因:
路径错误 / 伪静态未配置
✔ 原因:
PHP未正确解析
✔ 原因:
刷新即计数
✔ 解决:
使用 visits 表限制重复访问
通过本教程,你已经完成:
✔ 博客系统搭建
✔ 数据库配置
✔ 后台管理
✔ 访问统计
✔ 在线人数统计
如果你想继续优化,可以尝试:
富文本编辑器(类似 Word)
评论系统优化
SEO 优化
网站动画效果
PWA(像 APP 一样使用)
✨ 至此,一个完整的个人博客系统已经搭建完成
欢迎持续优化,打造属于自己的高端博客网站。