CentOS cyberpanel PHP 8.0 zip 扩展

问题描述 投票:0回答:1

我是 Moodle 用户,最近发现每次我尝试下载 ODS 文件(导出成绩)时,它都会显示异常 - 未找到“ZipArchive”类”

原来我的php(版本8.0)没有安装zip扩展

我尝试在cyberpanel上安装zip扩展(我的moodle托管在cyberpanel CentOS 7上),但我似乎没有安装,当我单击安装时,我收到此消息:

    Loaded plugins: copr, fastestmirror, priorities
    Loading mirror speeds from cached hostfile
     * base: atl.mirrors.clouvider.net
     * epel: mirrors.coreix.net
     * extras: mirror.dal.nexril.net
     * updates: atl.mirrors.clouvider.net
    10 packages excluded due to repository priority protections
    Package lsphp80-common-8.0.15-1.el7.x86_64 already installed and latest version
    Nothing to do
    PHP Extension Installed.

但是当我返回扩展页面时,它说扩展未安装,并且我仍然无法生成 ODS 文件,我尝试搜索它,人们说我需要在终端上执行此操作,我尝试使用cyberpanel 终端以 root 用户身份使用这些命令:

    yum install php-pear
    yum install php-devel
    pecl install zip

然后我转到 php.ini(我尝试在网络面板界面和终端上打开它)并插入代码:

    extension=zip.so;

在文件的“模块设置”部分之前,它仍然不起作用(似乎我在网络面板上安装了多个版本的php,我尝试在我的php 8.0目录和其他可用版本上编辑php.ini)

这很奇怪,因为在 7.3 版本的 php 上它安装并正常工作(甚至安装在界面上),当我将我的 Moodle 上的 php 版本更改为 7.3(我不想使用这个版本)时,错误完全消失了,我该如何解决?

php linux centos zip cyber-panel
1个回答
0
投票

对于在

Server > PHP > Install Extensions
部分或 LiteSpeed 存储库中找不到所需扩展的用户,请按照以下说明在 CyberPanel 中安装 PHP 扩展。

在这种情况下,您可以使用 PEAR 包管理器来管理 PECL 17 扩展。首先,将“lsphp80”更改为您的默认 PHP 版本并运行以下命令:

cd /usr/local/lsws/lsphp80/bin
wget http://pear.php.net/go-pear.phar
./lsphp go-pear.phar

安装 PEAR 后,您可以安装所需的扩展。例如,要安装最新版本的 zip 扩展,请使用以下命令:

/usr/local/lsws/lsphp80/bin/pecl install zip

如果您需要特定版本的 zip 扩展名,可以使用以下命令安装它:

/usr/local/lsws/lsphp80/bin/pecl install zip-1.21.1

注意:请确保将

extension=zip.so
添加到您的 .php 配置中

请记住将“lsphp80”替换为您默认安装的 PHP 版本。这应该可以帮助您在 CyberPanel 中安装所需的 PHP 扩展。

© www.soinside.com 2019 - 2024. All rights reserved.