在CentOS上编译安装PHP
准备工作
在开始之前,请确保您的CentOS系统已更新到最新版本,以避免可能的兼容性问题,使用以下命令进行更新:
sudo yum update y
安装依赖包
为了编译PHP,您需要安装一些必要的依赖包,以下是常见的依赖项列表及其安装命令:
sudo yum install y gcc gccc++ make autoconf automake libtool openssldevel zlibdevel bzip2devel libxml2devel libjpegdevel libpngdevel freetypedevel libmcryptdevel pcredevel libXpmdevel libzipdevel onigurumadevel curldevel mysqldevel mariadbdevel sqlitedevel libpqxxdevel libsodiumdevel libssh2devel gettextdevel aspelldevel alurdevel jsoncdevel
这些依赖包将确保您有足够的库和工具来编译PHP。
下载PHP源码
从PHP官方网站下载您想要编译的PHP版本的源码压缩包,要下载PHP 8.3.1版本,您可以使用以下命令:
wget https://www.php.net/distributions/php8.3.1.tar.gz
将下载的文件保存到一个合适的目录中,例如/usr/local/src
。
解压并进入源码目录
使用tar
命令解压下载的PHP源码压缩包,并进入解压后的目录:
tar zxvf php8.3.1.tar.gz cd php8.3.1
配置编译选项
在源码目录下,运行configure
脚本以配置编译选项,您可以根据需要调整以下示例中给出的选项:
./configure prefix=/usr/local/php withconfigfilepath=/usr/local/php/etc enablefpm withfpmuser=nobody withfpmgroup=nobody withmysqli withpdomysql withpgsql withpdopgsql withsqlite3 withpdosqlite enablembstring withcurl withopenssl enablesockets enablezip withzlib enablesoap enableopcache enableinlineoptimization withpear withxsl enableftp withmhash enablemaintainerzts withldap withldapsasl enablecalendar enableexif enablesysvmsg enablesysvsem enablesysvshm withgettext withsodium withlibssh2 enablestatic withlibzip
这些选项涵盖了许多常见的PHP扩展和功能,您可以根据项目需求进行调整。
编译和安装
运行make
命令开始编译过程,编译完成后,使用make install
命令将编译好的PHP安装到指定目录:
make sudo make install
配置环境变量
为了能够在任何地方运行PHP脚本,您需要将PHP的可执行文件路径添加到系统的PATH环境变量中,编辑/etc/profile
文件(或其他适当的Shell配置文件),在文件末尾添加以下内容:
export PATH=$PATH:/usr/local/php/bin
保存文件后,使用以下命令使更改立即生效:
source /etc/profile
检查PHP版本
要验证是否成功安装了PHP以及其版本信息,请运行以下命令:
php v
如果一切正常,您应该会看到类似以下的输出:
PHP 8.3.1 (cli) (built: Date Time) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.*, Copyright (c) Zend Technologies
这表明您已成功在CentOS上编译并安装了PHP。