centos PHP 编译安装
PHP包下载
wget https://www.php.net/distributions/php-7.4.16.tar.gz
解压、编译、安装、配置
这里默认已经在我的包下载位置
解压
tar -zvxf php-7.4.16.tar.gz
编译
- 先安装部分扩展库(按需安装)
yum install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel \ zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel \ curl curl-devel openssl openssl-devel libzip libzip-devel libxml2\ libxml2-devel
- configure 编译
./configure --prefix=/usr/local/php7.4.16 \ --with-config-file-path=/usr/local/php/etc \ --enable gd --with-zlib --with-freetype --enable-ftp \ --enable-mbstring --enable-bcmath --enable-calendar \ --enable-pdo --with-pdo-mysql=mysqlnd --enable-phar \ --with-curl --with-openssl --enable-ctype --enable-exif \ --with-sqlite3 --enable-shmop --with-mhash --disable-fileinfo --prefix 安装位置 --with-config-file-path 配置文件追踪位置 --disable-fileinfo 服务器内存不满1G --with-zlib zlib库支持 --with-freetype 对freetype字体库的支持 --with-bz2 对bz2文件格式的支持 --with-curl curl支持 --with-openssl --with-sqlite3 --with-mhash --enable-mbstring 支持字符库操作 --enable-bcmath 支持数字加减乘除操作 --enable-calendar 支持日历 --enable-ftp FTP支持 --enable-pdo PDO支持 --enable-ctype --enable-exif --enable gd 从PHP7.4开始不再使用--with-gd
- 安装
make && make install
配置
- 复制配置文件
cp php.ini-development /usr/lcoal/php7.4.16/etc/php.ini # 主配置文件 cp /usr/lcoal/php7.4.16/etc/php-fpm.conf.default /usr/lcoal/php7.4.16/etc/php-fpm.conf cp /usr/lcoal/php7.4.16/etc/php-fpm.d/www.conf.default /usr/lcoal/php7.4.16/etc/php-fpm.d/www.conf
- 使php命令全局使用
# 1. 修改/etc/profile文件,末尾加入如下 $PATH=$PATH:/usr/local/php7.4.16/bin # source /etc/profile 立即更新
问题记录
- 编译的时候类库出错
* --with-gd 改成 --enable-gd * --with-png-dir 参数被移除。需要 libpng 支持。 * --with-zlib-dir 参数被移除。需要 zlib 支持。 * --with-freetype-dir 改变为 --with-freetype * --with-jpeg-dir 改变为 --with-jpeg * --with-webp-dir 改变为 --with-webp * --with-xpm-dir 改变为 --with-xpm
- 安装的时候出现
php make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1
,因为服务器的内存不足1G,
所以在编译时要加上--disable-fileinfo
来解决服务器内存不满1G
验证
php -v
php -m
# 出现版本,扩展安装完成
本作品采用《CC 协议》,转载必须注明作者和本文链接