返回列表 发布新帖
查看: 18|回复: 0

xiuno迁移服务器步骤

988

主题

0

回帖

833

积分

高级会员

积分
833
发表于 2026-6-24 14:00:01 | 查看全部 |阅读模式
很多人问 xiuno 论坛怎么迁移到新服务器,过程其实不复杂,但细节容易踩坑。下面把我实操过的步骤和注意点梳理一下,按顺序做基本没问题。

第一步是盘点现状。确认旧服务器的 PHP 版本、Web 服务器类型(Nginx/Apache)、MySQL/MariaDB 版本,以及 xiuno 的版本号和已装插件列表。这一步决定你新环境的目标版本,尽量保持一致,避免跨大版本带来的兼容问题。顺便清理无用插件和缓存,能省下不少麻烦。

第二步是停站与备份。迁移前最好短暂停止写入:后台维护模式+Web 层加一个只读公告页。备份要做两份:站点文件和数据库。文件侧包含整个网站目录(例如 /www/wwwroot/xiuno/),重点是 upload/ 附件、conf/ 配置和插件目录。数据库用 mysqldump 导出,记得加上 --single-transaction 保证一致性,字符集统一用 utf8mb4,避免表情符号导致的乱码。备份完把压缩包校验一下哈希值,确保传输过程中不损坏。

第三步是搭环境。新服务器先装好 LEMP/LAMP,PHP 版本与旧服对齐,常见扩展如 pdo_mysql、mbstring、gd、openssl、zip、curl 都要有。数据库的 sql_mode 建议贴近旧环境,严格模式可能会触发历史数据写入失败。Nginx 配置里要注意上传大小 client_max_body_size,论坛图包多,默认 1M 会卡发帖;PHP 的 upload_max_filesize、post_max_size、memory_limit 也对应放宽。

第四步是传文件与导库。用 rsync/scp 上传站点压缩包到新服解压,保持目录结构不变。数据库先创建同名库与用户,设置权限,再导入 .sql。导入后检查字符集和排序规则是否一致(utf8mb4_general_ci 或 utf8mb4_unicode_ci),表和索引数量要对得上。若库很大,优先关掉慢查询和二进制日志以加速导入,完成后再恢复。

第五步是改配置与域名。xiuno 的数据库连接信息通常在 conf/conf.php 或类似文件里,填上新库的 host、user、pass、dbname。若域名不变,只需把 DNS 的 A 记录切到新服务器;若域名改变,站内可能存在绝对链接,需要一轮替换或用 Nginx 做 301 跳转。为了缩短灰度时间,可以先把 DNS TTL 调低后再切换。

第六步是权限与缓存。新机的站点目录需要赋予 Web 用户可写权限,至少 upload/、tmp/、log/ 这些目录要可读写。迁移后清理 xiuno 缓存(后台或手动删 runtime/cache 之类目录),避免旧缓存导致的奇怪界面问题。Nginx/Apache 也刷新配置,确保伪静态规则生效。

第七步是全面自测。登录后台、发帖回帖、上传图片、搜索、私信、插件功能逐项点一遍。移动端适配也看一下。若开了 CDN,确认源站 IP 已刷新,HTTPS 证书是否在新机部署到位。监控方面,启动基础的系统监控与慢查询日志,观察 24 小时内的错误日志,及时修正。

最后,说几个常见坑。其一是字符集不一致导致问号或乱码,根源在于导出导入时没统一 utf8mb4;其二是附件丢失,通常是只备份了程序没把 upload/ 带走;其三是文件权限问题,迁移完无法上传图片,多半是目录权限或 SELinux 限制;其四是 PHP 扩展缺失,表现为白屏或特定功能报错;其五是 DNS 缓存未刷新,部分用户访问到旧机继续写数据,解决方式是提前维护模式并在切换窗口内冻结写操作。

稳妥做法是先在新服务器起一个临时子域名做全量演练,确认一切正常再切主域。迁移本身不难,难在对细节的尊重,按上面的清单走一遍,基本能保证平滑切换。
回复 转播

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表