目 录CONTENT

文章目录

【Halo 迁移后后台转圈 + 前台 Template index was not found 完整解决流程】

JIN
JIN
2026-02-24 / 0 评论 / 0 点赞 / 16 阅读 / 0 字
广告 广告

【Halo 迁移后 后台转圈 + 前台 Template index was not found 解决方案】

适用场景:

  • Halo 备份zip 从一台 VPS 迁移到另一台后
  • 后台登录一直转圈
  • 前台访问显示:Template index was not found.

一、问题分析

出现这组症状,本质通常是三类问题叠加:

现象 真正原因
后台登录一直转圈 Halo 运行时报错(依赖缺失 / 版本问题)
前台 Template index was not found 当前启用主题不存在 / 插件版本错误
主题安装失败 Halo 主程序版本过低

二、第一步:确认容器是否正常

进入 Halo 目录:

cd ~/data/docker_data/halo

查看日志:

docker logs --tail=120 halo

如果看到类似错误:

NoClassDefFoundError: org/bouncycastle/crypto/params/Argon2Parameters$Builder

说明:

当前 Halo 镜像存在依赖问题(旧版本问题)


三、升级 Halo(核心步骤)

⚠️ 不要纠结,直接升级到 2.22.x 以上版本。


3.1 修改 docker-compose.yml

在 docker-compose.yml 里把:

image: halohub/halo:2.20.18

改成:

image: halohub/halo:2.22

或者你可以直接执行:

sed -i 's#image: halohub/halo:2\.20.*#image: halohub/halo:2.22#g' docker-compose.yml

3.2 拉取新镜像 + 强制重建

docker compose pull halo
docker compose up -d --force-recreate

查看版本:

docker logs --tail=20 halo

确认出现:

Version: 2.22.x

3.3 验证服务是否正常

curl -I http://127.0.0.1:8090/

返回:

HTTP/1.1 404 Not Found

说明:

Halo 服务正常,只是首页模板不存在


四、后台登录验证

浏览器访问:

https://你的域名/login

如果可以正常登录:

✔ 登录链路已修复
✘ 如果仍转圈 → F12 看 Network 状态码


五、解决 Template index was not found

5.1 本质原因:

当前主题不存在(themes 目录为空)

服务器验证:

ls -lah ~/data/docker_data/halo/halo_app_data/themes

如果显示:

No such file or directory

说明主题文件确实没了。


5.2 正确处理方式

进入后台:

后台 → 主题 → 安装主题 → 启用

刷新前台即可恢复。


六、插件版本不兼容问题

如果日志出现:

requires >=2.22.0

说明:

插件版本高于当前 Halo 版本

解决方式:

升级 Halo(见第三步)


七、external-url 必须正确

检测目的:避免缓存和跳转问题

在 docker-compose.yml 中确认:

- --halo.external-url=https://你的域名/

注意:

  • 必须是最终访问域名
  • 建议统一 https
  • 建议保留结尾 /

修改后重启:

docker compose up -d --force-recreate

八、完整恢复判断标准

当以下条件全部满足时,说明系统彻底恢复:

✔ docker logs 无异常
✔ 后台可登录
✔ 前台不再报 Template 错误
✔ 主题可正常安装
✔ 插件版本不再提示系统版本过低


九、总结

9.1 解决方法:

① docker logs 看是否版本问题
② 升级到 image: halohub/halo:2.22
③ docker compose up -d --force-recreate
④ 后台重新安装主题

90% 的情况都是版本 + 主题问题。


9.2 反思

我这次迁移事故的真正原因是:

  1. 使用了较旧 Halo 版本(2.20.x)
  2. 插件/主题要求更高版本
  3. 没第一时间看日志
  4. 登录转圈 ≠ 反向代理问题
  5. Template index 错误 ≠ 数据丢失
  6. 404 ≠ 服务没启动
  7. 日志是第一诊断工具

9.3 建议

docker-compose.yml 建议长期使用:

image: halohub/halo:2.22

而不是固定死某个小版本。


0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin
广告 广告

评论区