PHP 5.4在CentOS上的安装与配置详解

PHP 5.4 是一个广泛使用的版本,虽然已经停止更新,但在某些旧系统或特定应用中仍然需要使用,本文将详细介绍如何在 CentOS 系统中安装和配置 PHP 5.4,包括必要的步骤、注意事项以及常见问题的解决方案。

一、准备工作
1. 检查当前系统是否已安装 PHP
在安装 PHP 5.4 之前,首先需要检查系统中是否已经安装了 PHP,打开终端并输入以下命令:
rpm qa | grep php
如果系统中已经安装了 PHP,建议先卸载已有版本以避免冲突。
yum remove php y
2. 添加第三方源
默认情况下,CentOS 官方仓库可能不包含 PHP 5.4,需要添加第三方源来获取 PHP 5.4,常用的第三方源有 Webtatic 和 Remi。
添加 Remi 源

sudo rpm ivh http://rpms.famillecollet.com/enterprise/remirelease6.rpm
启用 Remi 源
sudo yum install yumutils y sudo yumconfigmanager enable remiphp54
3. 安装 EPEL 源(针对 CentOS 6)
对于 CentOS 6 用户,还需要添加 EPEL 源以获取一些额外的软件包。
sudo rpm ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epelrelease68.noarch.rpm
二、安装 PHP 5.4
1. 更新 YUM 缓存
在安装任何软件包之前,建议先更新 YUM 缓存以确保获取最新的软件包列表。
sudo yum clean all sudo yum makecache
2. 安装 PHP 5.4
使用以下命令安装 PHP 5.4:
sudo yum install php phpcli phpcommon phpgd phpmbstring phpmcrypt phpmysql y
3. 验证安装
安装完成后,可以通过以下命令验证 PHP 是否安装成功及其版本:
php v
输出应类似于:
PHP 5.4.x (cli) (built: xxxx)
三、配置 PHP 5.4
1. 编辑php.ini
PHP 的配置文件是php.ini,通常位于/etc 目录下,可以使用以下命令找到具体的路径:
php ini
编辑php.ini 文件,根据需要进行配置,如上传文件大小、内存限制等。
upload_max_filesize = 64M post_max_size = 64M memory_limit = 128M
保存后,重新启动 Web 服务器(如 Apache)以使配置生效。
2. 重启 Web 服务器
如果使用 Apache 作为 Web 服务器,需要重启服务以加载新的 PHP 配置:
sudo service httpd restart
如果使用 Nginx + PHPFPM,则需要重启 PHPFPM:
sudo service phpfpm restart
四、常见扩展的安装与配置
1. 安装常用扩展
PHP 5.4 支持丰富的扩展,可以根据项目需求安装相应的扩展,安装phpxml、phpjson、phpopcache:
sudo yum install phpxml phpjson phpopcache y
2. 配置扩展
某些扩展可能需要额外的配置。opcache 可以在php.ini 中进行如下配置:
[opcache] opcache.enable=1 opcache.memory_consumption=128 opcache.interned_cache_size=32 opcache.max_accelerated_files=4000 opcache.revalidate_freq=2
五、常见问题及解决方案
1.error_reporting 中的E_ALL 包括了E_STRICT
PHP 5.4 中,error_reporting 的E_ALL 现在包含了E_STRICT,可能会导致更多的警告和错误提示,如果不需要这些提示,可以修改php.ini:
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
2.mbstring 扩展缺失问题
在某些情况下,mbstring 扩展可能未安装或不可用,导致 PHP 报错,确保已安装该扩展:
sudo yum install phpmbstring y
并在php.ini 中启用:
extension=mbstring.so
1. 定期备份配置文件
在进行任何重要配置更改之前,建议备份原有的配置文件,以防出现错误可以快速恢复。
2. 保持系统和软件的更新
虽然使用的是较老的 PHP 版本,但仍需保持系统和其他软件的更新,以确保安全性和稳定性。
3. 使用虚拟环境管理依赖
对于复杂的项目,建议使用 Composer 和虚拟环境来管理 PHP 依赖,避免版本冲突。
4. 监控性能和日志
定期检查 Web 服务器和 PHP 的错误日志,及时发现和解决问题,确保系统的稳定运行。
七、FAQs
1. PHP 5.4 在 CentOS 7 上无法启动,提示缺少libmcrypt.so?
这是由于 PHP 5.4 依赖于libmcrypt,而 CentOS 7 默认不再包含这个库,解决方法是手动安装libmcrypt:
sudo yum install epelrelease y sudo yum install libmcrypt y echo "extension=mcrypt.so" >> /etc/php.ini
然后重启 Web 服务器。
2. 如何更改 PHP 的最大上传文件大小?
要更改 PHP 的最大上传文件大小,需要修改php.ini 中的upload_max_filesize 和post_max_size:
upload_max_filesize = 64M post_max_size = 64M
修改后,重启 Web 服务器以使配置生效。
3. PHP 5.4 的性能优化有哪些建议?
PHP 5.4 的性能优化可以从以下几个方面入手:
启用opcache:通过安装和配置opcache 扩展来加速脚本执行。
优化memory_limit:根据应用需求调整内存限制,避免因内存不足导致的崩溃。
使用 CDN:将静态资源托管到 CDN,减轻服务器负担。
数据库优化:确保数据库查询高效,使用索引和缓存机制。
代码优化:优化代码逻辑,减少不必要的计算和资源消耗。
通过以上步骤和建议,相信您能够在 CentOS 上顺利安装和配置 PHP 5.4,满足您的开发或生产需求,如果在过程中遇到任何问题,欢迎随时咨询相关技术社区或专业人士。
