在Linux系统中安装PHP5.4虽然已非主流(因PHP5.4已于2015年停止支持),但在维护旧项目或特定环境需求时仍需掌握其安装方法,本文将详细说明在Linux环境下通过源码编译方式安装PHP5.4的完整流程,涵盖环境准备、依赖安装、编译配置、核心配置及问题排查等关键环节,确保安装过程顺利且符合生产环境基本要求。

环境准备与依赖安装
PHP5.4的编译安装需要Linux系统具备基础的编译工具及依赖库,不同发行版的安装命令略有差异,以下以CentOS 7和Ubuntu 14.04为例分别说明。
系统基础环境
确保系统已更新至最新状态,并安装必要的编译工具:
- CentOS 7:
yum update -y yum groupinstall "Development Tools" -y
- Ubuntu 14.04:
apt-get update && apt-get upgrade -y apt-get install build-essential -y
PHP5.4核心依赖库
PHP5.4运行及编译需依赖多个库文件,需提前安装:
- CentOS 7:
yum install libxml2-devel libjpeg-turbo-devel libpng-devel freetype-devel openssl-devel curl-devel libicu-devel libmcrypt-devel libmhash-devel -y
- Ubuntu 14.04:
apt-get install libxml2-dev libjpeg-dev libpng-dev freetype6-dev openssl-dev libcurl4-openssl-dev libicu-dev libmcrypt-dev libmhash-dev -y
下载PHP5.4源码
从PHP官方镜像站下载PHP5.4的源码包(以5.4.45为例,最后一个稳定版本):
wget http://php.net/distributions/php-5.4.45.tar.gz tar -zxvf php-5.4.45.tar.gz cd php-5.4.45
编译配置与安装
PHP5.4的编译支持丰富的扩展模块,需根据实际需求配置安装参数,以下以常用模块(如MySQL支持、FPM进程管理、GD库等)为例,说明配置命令。
运行configure脚本
进入源码目录后,执行以下配置命令(根据实际需求增减模块):
./configure \ --prefix=/usr/local/php5.4 \ # 安装路径 --with-config-file-path=/usr/local/php5.4/etc \ # 配置文件路径 --enable-fpm \ # 启用FPM(FastCGI进程管理器) --with-mysql=mysqlnd \ # 使用MySQL原生客户端 --with-mysqli=mysqlnd \ # mysqli扩展 --with-pdo-mysql=mysqlnd \ # PDO MySQL扩展 --with-gd \ # GD库支持(图像处理) --with-jpeg-dir \ # JPEG支持 --with-png-dir \ # PNG支持 --with-freetype-dir \ # FreeType字体支持 --with-openssl \ # OpenSSL支持 --with-curl \ # cURL支持 --with-mcrypt \ # Mcrypt加密支持 --enable-mbstring \ # 多字节字符串支持 --enable-zip \ # ZIP压缩支持 --disable-fileinfo # 禁用fileinfo(减少资源占用)
注意事项:
- 若需连接MySQL数据库,建议使用
mysqlnd(MySQL Native Driver)而非原生MySQL客户端,以提高性能; - 若系统中未安装
libmcrypt,需通过yum install libmcrypt-devel(CentOS)或apt-get install libmcrypt-dev(Ubuntu)安装; - 配置过程中若提示“ module not found”,需通过
yum或apt-get安装对应的开发包。
编译与安装
配置完成后,执行编译和安装命令:

make -j$(nproc) # 使用多核编译,加快速度 make install
编译时间因系统性能而异,通常需5-15分钟,完成后,PHP5.4将安装在/usr/local/php5.4目录下。
核心配置与优化
安装完成后,需对PHP配置文件、FPM进程管理及Web服务器联动进行配置,确保服务正常运行。
配置php.ini
复制PHP配置文件模板并修改:
cp php.ini-development /usr/local/php5.4/etc/php.ini
编辑php.ini,调整关键参数(可根据服务器配置优化):
; 时区设置 date.timezone = Asia/Shanghai ; 内存限制 memory_limit = 128M ; 上传文件大小 upload_max_filesize = 32M post_max_size = 32M ; 开发环境关闭错误显示(生产环境建议关闭) display_errors = On error_reporting = E_ALL & ~E_NOTICE
配置PHP-FPM
PHP-FPM是PHP5.4的FastCGI管理器,需配置www.conf文件:
cp /usr/local/php5.4/etc/php-fpm.conf.default /usr/local/php5.4/etc/php-fpm.conf
编辑php-fpm.conf,调整进程管理参数:
; 进程管理方式(dynamic为动态,static为静态) pm = dynamic ; 最大子进程数 pm.max_children = 50 ; 启动时的进程数 pm.start_servers = 5 ; 空闲进程最小数 pm.min_spare_servers = 5 ; 空闲进程最大数 pm.max_spare_servers = 10
启动PHP-FPM并设置开机自启:
/usr/local/php5.4/sbin/php-fpm echo "/usr/local/php5.4/sbin/php-fpm" >> /etc/rc.local chmod +x /etc/rc.local
Web服务器联动配置
(1)Apache配置
若使用Apache,需加载mod_php5模块或配置FastCGI:

# 加载模块(若编译时启用--with-apxs2) LoadModule php5_module modules/libphp5.so # 关联PHP后缀 AddHandler php5-script .php DirectoryIndex index.php index.html
(2)Nginx配置
Nginx需通过FastCGI与PHP-FPM联动,配置nginx.conf中的location块:
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000; # PHP-FPM监听地址
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
验证安装与常见问题处理
验证安装
创建测试文件info.php:
echo "<?php phpinfo(); ?>" > /usr/local/nginx/html/info.php # Nginx默认目录 # 或 Apache默认目录:/var/www/html/info.php
访问http://服务器IP/info.php,若显示PHP5.4的配置信息,则安装成功。
常见问题处理
-
问题1:编译时报错“configure: error: Cannot find OpenSSL headers”
解决:安装OpenSSL开发包(CentOS:yum install openssl-devel;Ubuntu:apt-get install libssl-dev)。 -
问题2:启动PHP-FPM时报错“[ERROR] failed to open configuration file”
解决:检查php-fpm.conf路径是否正确,或使用php-fpm -t测试配置文件语法。 -
问题3:访问PHP页面显示空白或500错误
解决:检查Web服务器错误日志(如Nginx的error.log),确认PHP-FPM进程是否启动,或文件权限是否正确(chmod 755 /usr/local/nginx/html)。
通过以上步骤,可完成Linux环境下PHP5.4的源码编译安装,需注意的是,PHP5.4已无官方安全支持,仅建议用于临时维护旧项目,若为新建项目,推荐使用PHP7.x或更高版本,以获得更好的性能、安全性及现代特性,安装完成后,可根据实际需求调整PHP配置参数,并结合Web服务器实现高效运行。















