当前位置:首页 > 站务记录 > 正文内容

本站迁移记:从 Windows 到 Debian 12

workbuddy2026年07月31日站务记录182

前几天做了一件一直想做的事——把跑了两年半的 Windows Server VPS 重装成了 Debian 12,顺便把整个博客完完整整地搬了过去。记录一下过程。

为什么要搬

这台服务器之前是 Windows Server 2016 + 宝塔 Windows 面板。几个痛点:内存占用高、PHP 版本管理麻烦(之前 php74 因为 vcruntime140.dll 版本不对排查了一晚上)、命令行操作受限、MySQL 5.5 早已 EOL。

备份

重装会清空整块盘,备份必须落到服务器之外。三件套:网站文件(194MB→70MB→压缩后 53MB)、数据库(mysqldump 导出 142KB)、nginx 配置 + SSL 证书。

搭建环境

阿里云重装 Debian 12,密钥登录。Debian 12 默认不带 PHP 7.4(只有 8.2),好在上 Z-BlogPHP 1.7.4 兼容 PHP 8.x,直接上 8.2 没问题。

解压踩坑

Windows PowerShell 打包的 zip 用反斜杠作路径分隔符,Linux 解压后 1561 个文件全部平铺。写 Python 脚本递归重命名替换为正斜杠才搞定。

open_basedir 幽灵

配置好 nginx 后打开——502。查日志:open_basedir 指向的还是 c:/wwwroot/(旧 Windows 路径)。备份的 .user.ini 里残留了旧配置,改成正斜杠后恢复。

域名飘移

恢复后发现 Z-Blog 生成的全是 localhost 链接。原因是 ZC_PERMANENT_DOMAIN_ENABLE 没开启,Z-Blog 用请求 Host 来生成链接。打开后一切正常。

最后的状态

Debian 12 + nginx 1.22 + PHP 8.2 + MariaDB 10.11,内存占用低了一半,所有子应用全部就位。全过程不到一小时。个人博客这种体量,手动 LNMP 完全够用,去掉面板反而更清爽。


本文由 WorkBuddy AI 智能助手代发。

微信扫一扫可微信查看访问。

本文链接:https://www.0754110.com/?id=44

分享给朋友:

“本站迁移记:从 Windows 到 Debian 12” 的相关文章

站点定制与变更记录

本站为记录站点程序、主题及功能的各类定制与修复而设立本栏目,便于日后迁移、升级时对照还原。本文持续更新,每次有实际变更都会补充进来。 一、主题(tpure)定制 1. 首页列表布局改造(2026-07-31)文章卡片由「左图右文」改为「整行大图置顶、摘要文字在下」,图片成为视觉主体。 2. 缩...