0

请帮忙!将我的 Joomla 2.5.24 升级到 3.3 时,进程挂起。现在我得到 WSOD 并进入管理员(前端也不起作用),但出现错误:

管理员:致命错误:在第 712 行调用 /home/.../libraries/cms/html/behavior.php 中未定义的方法 JAdministrator::setHeader()

前端:致命错误:在第 271 行调用 /home/...../libraries/cms/html/behavior.php 中未定义的方法 JHtml::getJSObject()

我在更新之前备份了所有数据库和文件,但是在恢复时问题也没有解决。我花了一整天的时间试图弄清楚这一点,但我不知道如何调试 setheader()。谁能帮帮我吗?

4

1 回答 1

0

首先,让您的网站备份。

既然你有备份,那将是“容易的”。

一个。下载 Joomla 3.3 的副本,解压缩文件,然后运行

find

获取 Joomla 3.3 中的文件列表。

湾。现在从当前安装中删除所有这些文件,并在顶部恢复备份。

Joomla 3.3 添加的一些文件会破坏 Joomla 2.5。

C。恢复数据库,您的旧站点将再次运行。

现在是困难的部分。找出问题所在。

  1. 制作您网站的离线副本。
  2. 你是否处于“我感觉很幸运”的心情?运行更新并按照以下说明进行操作。
  3. 您想尽量减少头痛还是不习惯键入 shell 命令?首先将所有第三方扩展更新到最新版本,并确保它们支持 Joomla 3.3。

您必须有一些破坏网站的第三方扩展。这是我识别罪魁祸首的快速而肮脏的程序(但不要分享,这是一个秘密):

它是模块、插件还是组件?

如果 WSOD 同时在前端和后端,它应该是一个插件。

  1. 是插件吗?重命名插件文件夹“plugins2”。如果站点加载,将其重命名为插件,cd 到它,然后依次重命名系统、内容等,直到找到它所在的位置。继续挖掘到最后一层并隔离插件。

  2. 它是一个模块吗?重命名模块文件夹并查看站点是否加载。如果是这样,请返回并依次重命名您正在使用的模块的文件夹。如果您不知道您正在使用哪些,请使用通配符一次将它们移走一些以更快

  3. 它是一个组件吗?然后是主页组件,其他页面应该可以正常加载。

确定罪魁祸首后,下载更新并手动应用(打开 zip 并将文件复制到它们所属的位置)。

对于每个损坏的扩展,您可能需要多次执行此操作。记住墨菲定律。

于 2014-07-29T22:45:38.843 回答