如何检查在 Ubuntu Linux 12.04 LTS 中启用了/禁用了哪些 PHP 扩展?

2022-08-30 08:12:03

我正在本地计算机上使用 Ubuntu Linux 12.04 LTS。我很久以前就在我的机器上安装了LAMP。现在我想启用以下PHP扩展:

  1. php_zip
  2. php_xml
  3. php_gd2

首先,我想检查这些PHP扩展是否启用。我搜索了很多关于如何检查已安装/启用的PHP扩展,但每次我发现如何在Ubuntu Linux上安装这些扩展。那么有人可以让我知道我应该如何检查Ubuntu Linux 12.04 LTS中启用/禁用的PHP扩展吗?提前致谢。


答案 1

检查已安装的 php 模块和软件包

除了跑步

php -m

要获取已安装的 php 模块的列表,您可能会发现获取 Ubuntu 中当前安装的 php 的列表会很有帮助:

sudo dpkg --get-selections | grep -v deinstall | grep php

这很有帮助,因为 Ubuntu 通过提供 php 模块

然后,您可以通过从可用的 Ubuntu php 包中进行选择来安装所需的模块,您可以通过运行以下命令来查看这些模块

sudo apt-cache search php | grep "^php5-"

或者,对于 Ubuntu 16.04 及更高版本:

sudo apt-cache search php | grep "^php7"

正如你所提到的,有很多关于你可能需要的软件包的实际安装的信息,所以我不会在这里详细介绍。

相关:启用/禁用已安装的php模块

已安装的模块可能已被禁用。在这种情况下,它不会在运行时显示,但它将显示在已安装的Ubuntu软件包列表中。php -m

模块可以通过工具(在以后的发行版上)启用/禁用,该工具是软件包的一部分。php5enmodphpenmodphp-common

Ubuntu 12.04:

已启用的模块在 中符号链接/etc/php5/conf.d

Ubuntu 12.04:(使用 PHP 5.4+)

启用已安装的模块:

php5enmod <modulename>

禁用已安装的模块:

php5dismod <modulename>

Ubuntu 16.04 (php7) 及更高版本:

启用已安装的模块:

phpenmod <modulename>

禁用已安装的模块:

phpdismod <modulename>

重新加载阿帕奇

请记住在启用/禁用后重新加载Apache2:

service apache2 reload

答案 2

要检查此扩展名是否已启用,您可以创建一个php文件,即 并在那里编写以下代码:info.php

<?php 
echo "GD: ", extension_loaded('gd') ? 'OK' : 'MISSING', '<br>';
echo "XML: ", extension_loaded('xml') ? 'OK' : 'MISSING', '<br>';
echo "zip: ", extension_loaded('zip') ? 'OK' : 'MISSING', '<br>';
?>

就是这样。


推荐