編譯前準(zhǔn)備
需要的依賴包,可以直接使用 yum install 安裝。
# gcc編譯
yum -y install gcc
# 依賴包
yum install bzip2 bzip2-devel libcurl libcurl-devel libwebp-devel libjpeg-devel libpng-devel libXpm-devel freetype-devel libvpx-devel gettext gettext-devel gmp-devel libxml2 libxml2-devel openssl openssl-devel readline-devel libxslt libxslt-devel
# sqlite 包
yum install sqlite-devel
# mbstring 包 源代碼安裝方法。
# 需要有"--libdir=/usr/lib64"參數(shù)。如果不使用這個(gè)參數(shù),編譯PHP仍將報(bào)錯(cuò),編輯ldconfig配置無(wú)法解決問(wèn)題。
wget https://github.com/kkos/oniguruma/releases/download/v6.9.5_rev1/onig-6.9.5-rev1.tar.gz -O onig-6.9.5.tar.gz
tar -zxvf onig-6.9.5.tar.gz
cd onig-6.9.5/
./configure --prefix=/usr --libdir=/usr/lib64
make && make install
模塊對(duì)應(yīng)的依賴:
bz2
bzip2 bzip2-develcurl
libcurl libcurl-develgd
libwebp-devel libjpeg-devel libpng-devel libXpm-devel freetype-devel libvpx-develgettext
gettext gettext-develgmp
gmp-devellibxml
libxml2 libxml2-develmbstring
mbstringopenssl
openssl openssl-develreadline
readline-develxsl
libxslt libxslt-develzip
libzip-devel,libzip >= 0.11
安裝libzip
下載源碼包
wget https://www.php.net/distributions/php-7.4.9.tar.gz
解壓
tar -zxvf php-7.4.9.tar.gz
cd php-7.4.9
配置編譯選項(xiàng)
我的配置:
# 路徑設(shè)置:
--prefix=/usr/local/php74 \ #安裝位置
--with-config-file-path=/usr/local/php74/etc \ #php.ini 配置文件路徑
--with-config-file-scan-dir=/usr/local/php74/etc/php.d \ #php配置文件加載目錄 *.ini
./configure \
--prefix=/usr/local/php74 \
--with-config-file-path=/usr/local/php74/etc \
--with-config-file-scan-dir=/usr/local/php74/etc/php.d \
--with-bz2 \
--enable-calendar \
--with-curl \
--enable-exif \
--enable-ftp \
--enable-fpm \
--enable-gd \
--with-gettext \
--with-gmp \
--enable-mbstring \
--with-openssl \
--enable-pcntl \
--with-pdo-mysql \
--with-pear \
--with-readline \
--enable-shmop \
--enable-sockets \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--with-xsl \
--with-zip \
--with-zlib \
PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig/ \

編譯安裝
make test
make && make install
如果配置錯(cuò)了,需要重新編譯安裝。執(zhí)行:
make clean
make test
make && make install
配置
在源代碼目錄下,拷貝php.ini到安裝目錄默認(rèn)配置文件目錄
cp php.ini-production /usr/local/php/lib/php.ini
如果配置時(shí)使用了 --with-config-file-path=/usr/local/php74/etc則拷貝到配置的目錄cp php.ini-production /usr/local/php74/etc/php.ini
使用service管理:
cd sapi/
cd fpm/
cp init.d.php-fpm /etc/init.d/php-fpm
chmod 755 /etc/init.d/php-fpm
設(shè)置開機(jī)啟動(dòng):
編輯rc.local
vim /etc/rc.d/rc.local
在最后加入
/etc/init.d/php-fpm start
執(zhí)行一下
ldconfig
啟動(dòng)
啟動(dòng)
service php-fpm start
停止
service php-fpm stop
重啟
service php-fpm restart
額外安裝Redis擴(kuò)展
使用 Redis
安裝完使用service php-fpm restart重啟服務(wù)。在網(wǎng)頁(yè)用phpinfo();打印配置信息,可以看到啟用的redis。