centos安裝PHP的zlib擴充套件的例項教程

2021-12-30 10:42:44 字數 1529 閱讀 2822

一台伺服器,編譯php時未設定引數,導致缺少zlib擴充套件,無法執行解壓縮,錯誤資訊是:「fatal error: call to undefined function gzopen」。

首先找到當初編譯php時的目錄,如果沒了就找乙個相同版本的解壓縮,解壓縮到php(假設)目錄下,然後以root身份進入php/ext/zlib/目錄下

執行phpize,報錯:「cannot find config.m4.」,我找了半天沒找到這個檔案,但是看到乙個類似的「config0.m4」,就cp了乙個:

cp config0.m4 config.m4這個解決方法有點山寨,我也不知道啥意思,為什麼多了乙個0,反正親自測了能行。

再執行phpize,又報錯:「cannot find autoconf. please check your autoconf installation and the $php_autoconf environment variable. then, rerun this script.」

原來是autoconf不存在,通過yum安裝:

yum -y install autoconf再執行phpize,嗯,再敢報錯看我不打斷你的狗腿!!這次順利的執行完了。

# phpize

configuring for:

php api version: 20100412

zend module api no: 20100525

zend extension api no: 220100525

在這個目錄就生成了乙個configure指令碼,再執行以下**獲得php-config指令碼的位置備用:

# which php-config

/usr/local/bin/php-config(你的電腦上未必是這個結果)

再執行以下**獲得zlib的位置備用:

# find / -name zlib.h

/usr/include/zlib.h

都準備好之後就開始執行配置

./configure --with-php-config=/usr/local/bin/php-config --with-zlib=/usr注意:--with-zlib=/usr這裡不需要把檔案目錄寫全,寫到這裡就行了,php的擴充套件在編譯時都是這個德性,習慣就好了。

然後就是正式的編譯和安裝了:

make && make install順利的話,最終會提示:

installing shared extensions: /usr/local/lib/php/extensions/no-debug-non-zts-20100525/然後在php.ini的最後增加這麼一句:

extension=zlib.so再重啟php的cgi或者fastcgi或者php-fpm就可以了,具體重啟什麼要看伺服器通過什麼方式執行的php。

一切順利的話,在phpinfo中就可以看到zlib的資訊了,這就證明php的zlib擴充套件已經順利的安裝成功了。

centOS 自動安裝php

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!centos下安裝php yum install y php 這個只安裝php 建議安裝執行庫及mysql的支援 yum install y php php devel php mysql 如果你的系統是centos 5.6那麼上面這條命令安裝的是...

CentOS安裝較高版本的PHP

在centos直接使用yum install 安裝php的話版本比較低,如果需要高版本的話,請看如下 remi repository 是包含最新版本 php 和 mysql 包的 linux 源,由 remi 提供維護。有這個源之後,使用 yum 安裝或更新 php mysql phpmyadmin...

CentOS原始碼安裝PHP

先安裝需要的庫 yum y install libxml2 yum y install libxml2 devel yum y install gd yum y install gd devel yum y install curl curl devel yum y install libjpeg ...