[英]How can I install zipArchive on PHP 7.2 with CentOS 7?
我正在嘗試在具有最新 WordPress 的 nginx Web 服務器上安裝 ziparchive 和 domdocument。 為了運行 Avada 主題,我需要在本地 CentOS 7 測試服務器上使用這兩個。 我正在尋找過去 3 天的答案。 我該怎么辦?
這是“已安裝 yum 列表”的部分列表:
php-common.x86_64 7.2.3-2.el7.remi @remi-php72<BR>
php-fpm.x86_64 7.2.3-2.el7.remi @remi-php72<BR>
php-json.x86_64 7.2.3-2.el7.remi @remi-php72<BR>
php-mysqlnd.x86_64 7.2.3-2.el7.remi @remi-php72<BR>
php-pdo.x86_64 7.2.3-2.el7.remi @remi-php72<BR>
php72.x86_64 1.0-1.el7.remi @remi-safe<BR>
php72-php-cli.x86_64 7.2.3-2.el7.remi @remi-safe<BR>
php72-php-common.x86_64 7.2.3-2.el7.remi @remi-safe<BR>
php72-php-json.x86_64 7.2.3-2.el7.remi @remi-safe<BR>
php72-php-mbstring.x86_64 7.2.3-2.el7.remi @remi-safe<BR>
php72-php-pear.noarch 1:1.10.5-6.el7.remi @remi-safe<BR>
php72-php-process.x86_64 7.2.3-2.el7.remi @remi-safe<BR>
php72-php-xml.x86_64 7.2.3-2.el7.remi @remi-safe<BR>
php72-runtime.x86_64 1.0-1.el7.remi @remi-safe<BR>
unzip.x86_64 6.0-16.el7 @base<BR>
php-json.x86_64 7.2.3-2.el7.remi @remi-php72
php72-php-json.x86_64 7.2.3-2.el7.remi @remi-safe
看起來你的安裝很亂,你已經安裝了一半的php- 包(基礎包)和一半的php72-php- (SCL 包)
閱讀有關php-* 和 php##-php-* 包之間區別的常見問題解答?
php-fpm.x86_64 7.2.3-2.el7.remi @remi-php72
當您使用 FPM 作為remi-php72 的基礎包時,您需要來自同一存儲庫的 zip 擴展(可能未啟用,請使用yum repolist
)
丟棄不需要的包
yum remove php72\*
正如向導所解釋的,永久啟用存儲庫以確保將從中提取所有擴展。
yum-config-manager --enable remi-php72
yum install php-pecl-zip
echo "extension=zip.so" >> /etc/php.d/zip.in
永遠不要這樣做,每個包都提供了它的配置文件來啟用提供的擴展。
嘗試yum search zip |grep -i php
並使用包名安裝回來
這個方法對我yum search zip |grep -i php
:首先輸入: yum search zip |grep -i php
然后它會出現你所有與 ZIP 擴展相關的模塊和各種 PHP 版本,如下所示:
ea-php54-php-zip.x86_64 : A module for PHP applications that need to handle .zip
ea-php55-php-zip.x86_64 : A module for PHP applications that need to handle .zip
ea-php56-php-zip.x86_64 : A module for PHP applications that need to handle .zip
ea-php70-php-zip.x86_64 : A module for PHP applications that need to handle .zip
ea-php71-php-zip.x86_64 : A module for PHP applications that need to handle .zip
ea-php72-php-zip.x86_64 : A module for PHP applications that need to handle .zip
ea-php73-php-zip.x86_64 : A module for PHP applications that need to handle .zip
選擇您使用的任何版本: yum install ea-php72-php-zip.x86_64
最后,通過service httpd restart
Apache
你可以試試: yum install php-pecl-zip.x86_64
嘗試安裝並通過運行啟用它: echo "extension=zip.so" >> /etc/php.d/zip.ini
我能夠通過以下方式解決這個問題:
yum install yum-utils
wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum install remi-release-7.rpm
yum-config-manager --enable remi-php72
yum install php72-php-pecl-zip
echo "extension=/opt/remi/php72/root/usr/lib64/php/modules/zip.so" >> /etc/php.d/zip.ini
問題是由於使用 remi repo,它沒有將模塊放置在 PHP 期望的默認位置之一。 在 /etc/php.d/zip.ini 下的擴展變量中設置 zip.so 的絕對路徑可解決此問題。
如果上述路徑不起作用,您可以通過以下方式在您的系統上找到 zip.so 的位置:
updatedb
locate zip.so
這對我有用!
yum install php-pecl-zip
apachectl restart
嘗試yum search zip |grep -i php
並使用包名安裝回來
喜歡 - sudo yum install ea-php73-php-zip.x86_64
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.