我有一个具有以下设置的环境:
- Centos/REL 8
- 从Remi的存储库安装PHP 7.4
我已经安装了php,如下所示:
sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo dnf -y install http://rpms.remirepo.net/enterprise/remi-release-8.rpm
sudo dnf -y install php74 php74-php-common php74-php-devel php74-php-cli php74-php-fpm
现在我想安装php操作缓存。然而,dnf报告说似乎没有模块php74-php-opcache
。
$ sudo dnf install php74-php-opcache
Updating Subscription Management repositories.
Last metadata expiration check: 0:56:51 ago on Fri 04 Jun 2021 13:52:35 NZST.
No match for argument: php74-php-opcache
Error: Unable to find a match: php74-php-opcache
我很确信这与repo的设置方式有关,就像在我的开发环境中一样,它是有效的。
$ sudo dnf -y install php74-php-opcache
Last metadata expiration check: 0:11:18 ago on Fri 04 Jun 2021 02:36:41 PM NZST.
Dependencies resolved.
==================================================================================================================================================================================================================================
Package Architecture Version Repository Size
==================================================================================================================================================================================================================================
Installing:
php74-php-opcache x86_64 7.4.20-1.el8.remi remi-safe 274 k
以下是dnf repolist
对问题环境的输出:
$ sudo dnf repolist
Updating Subscription Management repositories.
repo id repo name
epel Extra Packages for Enterprise Linux 8 - x86_64
epel-modular Extra Packages for Enterprise Linux Modular 8 - x86_64
mod-pagespeed mod-pagespeed
pgdg-common PostgreSQL common RPMs for RHEL/CentOS 8 - x86_64
pgdg12 PostgreSQL 12 for RHEL/CentOS 8 - x86_64
remi-modular Remi's Modular repository for Enterprise Linux 8 - x86_64
rhel-8-for-x86_64-appstream-rpms Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
rhel-8-for-x86_64-baseos-rpms Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)
顺便说一句,我试过dnf install php-opcache
。这很好。但它下载了7.2版本,并将opcache.so放在了与PHP查找模块的位置不同的位置,而没有10-opcache.ini文件。我确实尝试手动将这些文件复制到PHP安装程序正在查找这些文件的位置,但我收到了一个警告
/opt/remi/php74/root/usr/lib64/php/modules/opcache.so: undefined symbol: _zval_ptr_dtor
显然,从粘贴的报告列表中;remi";存储库未启用。
要获得正确的配置,请按照向导说明