环境介绍
- 系统:CentOS7
- 程序版本:7.4.29
注意:php7尽量用该阶段最新版的源码来编译
依赖软件安装
- 需要提前安装必要的库,为下面编译准备
yum install epel-release -y
yum install libtool-ltdl-devel libxslt-devel zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel libmcrypt-devel mhash-devel mcrypt sqlite-devel libcurl-devel oniguruma-devel libzip -y
groupadd www
useradd -g www -s /sbin/nologin -M www
依赖库安装
cd /usr/local/src
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar xf libiconv-1.14.tar.gz #源码包资源下载
cd libiconv-1.14
./configure --prefix=/data/soft/libiconv
sed -i -e '/gets is a security/d' ./srclib/stdio.in.h
make && make install
php编译源码
- 创建必要目录和解压源码包,php-7.4.29.tar.gz源码包在最下面资源下载
cd /usr/local/src
mkdir -p /data/soft/php
tar xf php-7.4.29.tar.gz
cd php-7.4.29
- 开始编译安装
./configure \
--prefix=/data/soft/php-7.4.29 \
--enable-mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-iconv-dir=/data/soft/libicnv \
--with-freetype \
--with-jpeg \
--with-png \
--with-zlib \
--with-libxml \
--with-expat \
--disable-rpath \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--enable-mbregex \
--enable-fpm \
--enable-mbstring \
--enable-gd \
--with-openssl \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--with-zip \
--enable-soap \
--enable-short-tags \
--enable-static \
--with-xsl \
--with-fpm-user=www \
--with-fpm-group=www \
--enable-ftp
make -j2
make install
注意: -j交叉编译需要看服务器是几核心的
php相关配置
- 复制php配置文件
cp php.ini-development /data/soft/php-7.4.29/lib/php.ini
cp -a /data/soft/php-7.4.29/etc/php-fpm.conf.default /data/soft/php-7.4.29/etc/php-fpm.conf
cp -a /data/soft/php-7.4.29/etc/php-fpm.d/www.conf.default /data/soft/php-7.4.29/etc/php-fpm.d/www.conf
启动脚本
- 启动脚本需要用的源码包的脚本,因为编译时已经把相应的安装路径写进去,所有拷贝就可以直接用
cp -a /usr/local/src/php-7.4.29/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
chmod +x /etc/rc.d/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on
service php-fpm start
相关文章
暂无评论...