php8 重新编译 日期:2024-10-23 分类:1 人气:216 前提条件,已经安装过了,但是需要安装静态扩展或者修复漏洞,现在需要重新编译 去到php的bin目录下,运行以下代码 ``` ./php -i|grep "configure" ``` 去到之前安装php的目录,如果不知道在哪里运行以下两行代码,找到路径 ``` cd / find -name configure ``` 运行上步中打出来的信息 运行完成了 在当前目录下运行下面的 ``` make && make install ``` 没问题了 就运行以下命令重启 ``` service php-fpm restart ``` ### 说明 php运行时会扫描--with-config-file-scan-dir所在的目录,并加载目录下额外的配置文件; enable 是启用 PHP 源码包自带,但是默认不启用的扩展,比如 ftp 和 exif 扩展。with 是指定扩展依赖的资源库的位置,如果是默认位置,就可以留空。 php 的扩展分为静态编译和动态编译两种,静态编译就是随着PHP的源码一起编译安装,也就是 --enable 和 --with 启用的扩展。 动态编译就是在一个已经可以使用的 PHP 环境下,使用 phpize 命令来给 php 增加扩展的方式,这种方式就是生成的 so 文件。所以想要把扩展编译进 php 内核,就需要和 php 一起编译安装。 php源码包ext目录下的就是官方默认支持的扩展,还有一部分就是 pecl 库里的扩展,pecl 的一部分扩展也是官方支持的,另一部分是第三方开发者支持的。 把扩展跟随php一起编译安装,也就是 configure 命令,enable和with都是编译时候的一些选项,而enable更多的情况下是启用某个扩展, php官方支持的扩展可以在源码编译的时候编译进php,而第三方的扩展则必须以so的形式引入 ### 鸣谢 - [csdn**打工人007**](https://blog.csdn.net/qq_35043734/article/details/110442179) - [腾讯云](https://cloud.tencent.com/developer/article/2218822) 标签: php 上一篇:七棵菜表单快速开发平台二次开发步骤 下一篇:php8 Call to undefined function imagecreatefromjpeg() 随便看看 2024-02-19 PHP7 运算符“??” 和“?:”的区别 2022-11-30 Linux 后台运行命令 2022-11-25 关于我们 2022-11-30 centos一键系统安装lnmp集成环境 2022-11-30 linux 生成 ssh 公钥 留言