寶塔PHP7.3版本安裝ZIP擴充套件
因為公司有個需求之前寫了個外掛,用到了PHPOffice,這個包其中的PHPEcexl用到了ZIP擴充套件,導致一直失敗。之前7.2是沒有問題的,懷疑是PHP更新版本導致的問題,隨後檢視日誌發現一條php Class 'ZipArchive' not found
,然後去檢視PHPINFO,發現確實沒有ZIP擴充套件。
隨後百度了下寶塔PHP7.3 ZIP擴充套件,查到了解決方案。
原因回顧:
早期安裝的Php7.3是獨立編譯zip擴充套件,後續安裝及升級是整合編譯的,導致升級後會重複載入zip模組.
為避免這個錯誤.
後面的PHP就不再單獨編譯ZIP擴充套件了。
然後呢,PHP 7.3.8,ZIP 模組不再整合了,在面板配置中卻沒有安裝ZIP擴充套件的選擇。
這樣新安裝php7.3就會出現phpzip丟失的問題
但是,ZIP擴充套件本來就包含在軟體包裡,解決這個問題,只需要手動進行新增即可.
cd /www/server/php/73/src/ext/zip/
/www/server/php/73/bin/phpize
./configure --with-php-config=/www/server/php/73/bin/php-config
make && make install
安裝好zip擴充套件,還需要在PHP配置檔案中啟用.
在php.ini中新增這一行:
extension = /www/server/php/73/lib/php/extensions/no-debug-non-zts-20180731/zip.so
然後重啟php7.3即可.
安裝過程會報錯、libzip不支援或未安裝
安裝libzip,即可解決wget https://nih.at/libzip/libzip-1.2.0.tar.gz
tar -zxvf libzip-1.2.0.tar.gz cd libzip-1.2.0
./configure
make && make install
zipconf.h找不到,新增軟連線,即可解決
ln -s /usr/local/lib/libzip/include/zipconf.h /usr/local/include/zipconf.h