0

0

如何通过源码编译安装PHP的详细步骤?

雪夜

雪夜

发布时间:2025-10-30 23:27:01

|

793人浏览过

|

来源于php中文网

原创

通过源码编译安装PHP可实现高度定制化,首先更新系统并安装build-essential、libssl-dev等依赖,接着下载PHP 8.2.12源码包并解压,进入目录后运行./configure设置安装路径、启用FPM、MySQL、GD库等模块,确认配置无误后执行make -j$(nproc)进行并行编译,完成后运行sudo make install将文件安装至指定目录,最后复制php.ini-production到/etc/php.ini并配置php-fpm.d/www.conf,启动sudo /usr/local/php/sbin/php-fpm服务即可完成部署。

如何通过源码编译安装php的详细步骤?

如果您希望在服务器上运行特定版本的PHP,或者需要自定义扩展和配置,则通过源码编译安装是最佳选择。这种方式允许您完全控制PHP的构建过程,包括启用或禁用模块、优化性能参数等。

本文运行环境:Dell PowerEdge R750,Ubuntu 22.04

一、准备编译环境

在开始编译之前,必须确保系统中已安装必要的开发工具和依赖库。这些工具包括编译器、自动配置脚本支持以及用于处理图像、加密、数据库连接等功能的外部库。

1、更新系统软件包列表以获取最新的安全补丁和版本信息:sudo apt update

立即学习PHP免费学习笔记(深入)”;

2、安装基础编译工具链,包括GCC编译器、Make构建工具和Autoconf脚本处理器sudo apt install build-essential autoconf libtool pkg-config

3、安装PHP编译过程中常用的依赖库,如OpenSSL、BZip2、cURL、libpng、libjpeg、freetype、libxml2、libzip等:sudo apt install libssl-dev libbz2-dev libcurl4-openssl-dev libpng-dev libjpeg-dev libfreetype6-dev libxml2-dev libzip-dev

二、下载PHP源码包

从官方PHP网站获取所需版本的源码压缩包,推荐使用稳定版本以确保兼容性和安全性。源码通常以tar.gz格式发布,需解压后进行配置。

1、进入临时目录并使用wget命令下载指定版本的PHP源码,例如PHP 8.2.12:wget https://www.php.net/distributions/php-8.2.12.tar.gz

2、解压下载的源码文件到当前目录:tar -zxvf php-8.2.12.tar.gz

3、切换到解压后的源码目录:cd php-8.2.12

三、配置编译选项

使用configure脚本生成Makefile文件,该脚本会检测系统环境并根据提供的参数决定哪些功能被包含进最终的PHP二进制文件中。此步骤极为关键,直接影响PHP的功能集和性能表现。

FreeTTS
FreeTTS

FreeTTS是一个免费开源的在线文本到语音生成解决方案,可以将文本转换成MP3,

下载

1、运行configure脚本并指定常用选项,例如安装路径、启用FPM进程管理器、支持MySQL、多线程ZTS等:./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-mysqli --with-pdo-mysql --with-openssl --with-zlib --enable-mbstring --with-gd --with-jpeg --with-freetype --enable-zip --enable-bcmath --enable-calendar

2、若需支持更多扩展(如Redis、Memcached),可在后续单独编译,也可在此阶段添加对应路径。

3、检查输出结果中的“Summary”部分,确认关键模块是否已正确启用,避免遗漏重要依赖。

四、执行编译与安装

一旦配置完成,即可启动编译流程。此过程将源代码转换为可执行的二进制程序,耗时较长,具体取决于CPU核心数和内存大小。

1、启动并行编译以加快速度,使用-j参数指定CPU核心数量:make -j$(nproc)

2、编译成功后,将生成的文件复制到之前设定的安装目录:sudo make install

五、配置PHP运行环境

安装完成后需设置主配置文件php.ini及FPM服务配置,以便PHP能够正常响应Web请求。

1、将源码目录下的模板配置文件复制到安装路径:sudo cp php.ini-production /usr/local/php/etc/php.ini

2、编辑php.ini文件调整内存限制、上传大小等参数:sudo nano /usr/local/php/etc/php.ini

3、配置FPM服务,修改www.conf中的用户组权限和监听端口sudo nano /usr/local/php/etc/php-fpm.d/www.conf

4、启动PHP-FPM服务:sudo /usr/local/php/sbin/php-fpm

相关专题

更多
php文件怎么打开
php文件怎么打开

打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。

2788

2023.09.01

php怎么取出数组的前几个元素
php怎么取出数组的前几个元素

取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。

1687

2023.10.11

php反序列化失败怎么办
php反序列化失败怎么办

php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。

1548

2023.10.11

php怎么连接mssql数据库
php怎么连接mssql数据库

连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。

1036

2023.10.23

php连接mssql数据库的方法
php连接mssql数据库的方法

php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。

1485

2023.10.23

html怎么上传
html怎么上传

html通过使用HTML表单、JavaScript和PHP上传。更多关于html的问题详细请看本专题下面的文章。php中文网欢迎大家前来学习。

1256

2023.11.03

PHP出现乱码怎么解决
PHP出现乱码怎么解决

PHP出现乱码可以通过修改PHP文件头部的字符编码设置、检查PHP文件的编码格式、检查数据库连接设置和检查HTML页面的字符编码设置来解决。更多关于php乱码的问题详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1569

2023.11.09

php文件怎么在手机上打开
php文件怎么在手机上打开

php文件在手机上打开需要在手机上搭建一个能够运行php的服务器环境,并将php文件上传到服务器上。再在手机上的浏览器中输入服务器的IP地址或域名,加上php文件的路径,即可打开php文件并查看其内容。更多关于php相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1307

2023.11.13

php远程文件教程合集
php远程文件教程合集

本专题整合了php远程文件相关教程,阅读专题下面的文章了解更多详细内容。

21

2026.01.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号