- 状态
- 已解决
问题概述
在 Ubuntu Server 15.10 及更早版本以及 CentOS 服务器上安装 WPML 期间,会抛出类似 Call to undefined function simplexml_load_file(... 的致命错误。
请注意,如果您在使用其他服务器操作系统时遇到此相同错误,可能仍然是相同的原因。
这发生在以下情况下:
- 安装或更新到 Ubuntu 15.10(或更早版本)或 CentOS。
- 运行
apt-get upgrade命令。 - 使用 WPML 创建网站。
临时解决方法
此问题有两种临时解决方法:
- 使用 Synaptic 软件包管理器安装 php7.0-xml 包,其中包含 SimpleXml。
- 如果您使用的是带有 ppa: ondrej/php PPA 的 Ubuntu,请在终端中运行以下命令:
sudo add-apt-repository -y ppa:ondrej/php && sudo apt update && apt install -y php7.0-mbstring php7.0-zip php7.0-xml
如果您使用的是更新版本的 PHP,请将所有 7.0 替换为您安装的 PHP 版本(例如
sudo add-apt-repository -y ppa:ondrej/php && sudo apt update && apt install -y php7.1-mbstring php7.1-zip php7.1-xml)。
重新启动 Apache 后,该问题应该会得到解决。
来源:Stackoverflow: PHP 7 simpleXML
我们注意到在某些版本的 Ubuntu(例如 Ubuntu 15.10)中未安装 simplexml 扩展。
缺少该扩展似乎是存储库维护人员的疏忽,可以通过手动安装该扩展来解决。
此外,该问题并非在所有版本的 Ubuntu 中都会出现,有些版本似乎包含对该扩展的引用。