如何在Linux系统上安装PHP 5.6,详细教程,想在Linux上安装PHP 5.6却无从下手?这份详细教程帮你轻松搞定!,想在Linux上安装PHP 5.6却无从下手?这份详细教程帮你轻松搞定!
本教程详细介绍了在Linux系统上安装PHP 5.6的完整步骤,首先需要添加第三方软件源(如Ondřej Surý的PPA),然后通过apt-get命令更新软件包列表并安装PHP 5.6核心组件,教程包含安装常用扩展模块(如mysql、gd、curl等)的方法,以及如何配置PHP.ini文件的关键参数,同时还提供了验证安装是否成功的命令(php -v),并指导用户如何设置PHP 5.6为默认版本或与其他版本共存,针对不同Linux发行版(如Ubuntu/Debian、CentOS/RHEL)给出了相应的安装说明,最后还包含常见问题解决方法,确保用户能顺利完成PHP 5.6的安装和基础配置工作。
PHP作为全球最流行的服务器端脚本语言之一,在Web开发领域长期占据主导地位,虽然PHP已发展到8.x版本,但仍有大量遗留系统和传统应用运行在PHP 5.6环境中,作为5.x系列的最终版本,PHP 5.6相较于早期版本提供了显著的性能提升和安全增强,同时保持了出色的向后兼容性,这使得它成为维护老旧系统的理想选择。
本教程将全面介绍在Linux系统中安装PHP 5.6的多种方法,包括:
- 使用系统包管理器直接安装
- 通过源码编译安装实现高度定制
- 利用宝塔面板简化安装流程
无论您是经验丰富的系统管理员还是刚入门的开发人员,都能从本指南中找到适合您技术水平和需求的安装方案。
安装前的准备工作
在开始PHP 5.6的安装过程前,请确保完成以下准备工作:
-
系统环境确认:
- 本文以CentOS/RHEL 7.x为主要示例,但所述方法同样适用于Ubuntu、Debian等主流Linux发行版
- 执行
cat /etc/os-release
命令可查看当前系统版本信息
-
权限准备:
- 确保您拥有root权限或sudo权限
- 可通过
sudo -v
命令验证当前用户的sudo权限
-
网络连接检查:
- 测试网络连通性:
ping -c 4 google.com
- 如需配置代理,请提前设置好环境变量
- 测试网络连通性:
-
现有PHP环境评估:
- 使用
php -v
检查当前PHP版本 - 若系统已安装其他PHP版本,应考虑多版本共存方案
- 使用
执行版本检查命令示例:
php -v
预期输出可能如下:
- PHP 5.6.40 (cli) (built: Mar 6 2019 23:13:11)
- Copyright (c) 1997-2016 The PHP Group
- Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
使用YUM安装PHP 5.6(CentOS/RHEL系统)
对于基于RPM的Linux发行版如CentOS和RHEL,YUM是最便捷的包管理工具,由于官方仓库可能不包含PHP 5.6,我们需要添加第三方仓库。
添加必要的软件仓库
-
安装EPEL仓库(Extra Packages for Enterprise Linux):
- sudo yum install -y epel-release
-
添加Remi仓库(专注于PHP版本的第三方仓库):
- sudo rpm -Uvh https://rpms.remirepo.net/enterprise/remi-release-7.rpm
查看可用PHP版本
执行以下命令查看仓库中所有可用的PHP版本:
- sudo yum list php --showduplicates | grep 5.6
完整安装PHP 5.6及其常用扩展
执行以下命令安装PHP 5.6核心及常用扩展:
- sudo yum install -y --enablerepo=remi-php56 \
- php \
- php-common \
- php-opcache \
- php-mcrypt \
- php-cli \
- php-gd \
- php-curl \
- php-mysqlnd \
- php-pdo \
- php-mbstring \
- php-xml \
- php-zip \
- php-json \
- php-pecl-apcu
验证安装结果
安装完成后,通过以下命令验证:
- php -v
- php -m # 查看已加载的模块
使用APT安装PHP 5.6(Debian/Ubuntu系统)
对于Debian及其衍生发行版如Ubuntu,APT是标准的包管理工具,以下是详细的安装步骤:
添加第三方PPA仓库
-
首先安装必要的工具:
- sudo apt-get update
- sudo apt-get install -y software-properties-common
-
添加Ondřej Surý维护的PHP仓库:
- sudo add-apt-repository ppa:ondrej/php
- sudo apt-get update
安装PHP 5.6核心组件
执行以下命令进行基础安装:
- sudo apt-get install -y php5.6 php5.6-common php5.6-cli
安装常用功能扩展
根据应用需求选择安装扩展:
- sudo apt-get install -y \
- php5.6-mysql \
- php5.6-gd \
- php5.6-curl \
- php5.6-mbstring \
- php5.6-xml \
- php5.6-zip \
- php5.6-json \
- php5.6-opcache \
- php5.6-bcmath
验证安装
确认安装成功:
- php5.6 -v
- /usr/bin/php5.6 -m
通过源码编译安装PHP 5.6
源码编译安装虽然复杂,但可以提供最大的灵活性和优化空间,适合需要高度定制环境的高级用户。
安装编译依赖项
- sudo yum groupinstall -y "Development Tools"
- sudo yum install -y \
- libxml2-devel \
- openssl-devel \
- curl-devel \
- libjpeg-devel \
- libpng-devel \
- libicu-devel \
- libxslt-devel \
- bzip2-devel \
- libmcrypt-devel
下载PHP源码包
- wget https://www.php.net/distributions/php-5.6.40.tar.gz
- tar xzvf php-5.6.40.tar.gz
- cd php-5.6.40
配置编译选项
以下配置示例包含了Web服务器常用的功能模块:
- ./configure --prefix=/usr/local/php56 \
- --with-config-file-path=/usr/local/php56/etc \
- --enable-fpm \
- --with-fpm-user=nginx \
- --with-fpm-group=nginx \
- --with-mysqli=mysqlnd \
- --with-pdo-mysql=mysqlnd \
- --with-openssl \
- --with-zlib \
- --with-curl \
- --enable-gd-native-ttf \
- --with-jpeg-dir \
- --with-png-dir \
- --with-freetype-dir \
- --enable-mbstring \
- --enable-zip \
- --with-pear \
- --with-xsl \
- --enable-opcache \
- --enable-bcmath \
- --enable-pcntl
编译和安装
- make -j$(nproc)
- sudo make install
配置文件设置
-
复制配置文件模板:
- sudo cp php.ini-production /usr/local/php56/etc/php.ini
- sudo cp /usr/local/php56/etc/php-fpm.conf.default /usr/local/php56/etc/php-fpm.conf
-
创建systemd服务文件
/etc/systemd/system/php56-fpm.service
:- [Unit]
- Description=The PHP 5.6 FastCGI Process Manager
- After=network.target
[Service] Type=forking PIDFile=/run/php56-fpm.pid ExecStart=/usr/local/php56/sbin/php-fpm --daemonize --fpm-config /usr/local/php56/etc/php-fpm.conf ExecReload=/bin/kill -USR2 $MAINPID ExecStop=/bin/kill -SIGQUIT $MAINPID
[Install] WantedBy=multi-user.target
- 3. 启动并启用服务:
- ```bash
- sudo systemctl daemon-reload
- sudo systemctl start php56-fpm
- sudo systemctl enable php56-fpm
使用宝塔面板安装PHP 5.6
宝塔面板是一款强大的国产服务器管理工具,特别适合不熟悉命令行操作的用户。
宝塔面板安装
执行以下一键安装脚本:
- wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sudo bash install.sh
安装完成后,控制台会显示面板访问地址和初始凭据。
通过Web界面安装PHP 5.6
- 登录宝塔面板后,进入"软件商店"
- 在搜索框中输入"PHP"
- 找到PHP 5.6版本并点击"安装"
- 在安装选项页面:
- 选择需要的扩展模块
- 可调整基础配置参数
- 点击"提交"开始自动安装
多版本PHP管理
宝塔面板支持同时安装多个PHP版本,并可为不同网站分配不同PHP版本:
- 进入"网站"管理界面
- 选择目标网站,点击"设置"
- 在"PHP版本"选项中选择PHP 5.6
- 保存设置并重载Web服务
PHP 5.6的配置优化建议
安全加固配置(php.ini)
- expose_php = Off
- display_errors = Off
- log_errors = On
- error_log = /var/log/php_errors.log
- allow_url_fopen = Off
- allow_url_include = Off
- disable_functions = exec,passthru,shell_exec,system,proc_open,popen
- session.cookie_httponly = 1
- session.cookie_secure = 1 ; 仅在使用HTTPS时启用
性能优化建议
- opcache.enable=1
- opcache.memory_consumption=128
- opcache.interned_strings_buffer=8
- opcache.max_accelerated_files=4000
- opcache.revalidate_freq=60
- opcache.fast_shutdown=1
- realpath_cache_size=256k
- realpath_cache_ttl=3600
- max_execution_time = 120
- max_input_time = 120
- memory_limit = 256M
文件上传配置
- file_uploads = On
- upload_max_filesize = 16M
- post_max_size = 18M
- max_file_uploads = 20
常见问题解决方案
多版本PHP共存问题
-
使用alternatives系统:
- sudo update-alternatives --set php /usr/bin/php5.6
-
Web服务器配置:
- 对于Apache:使用
AddHandler
指令指定PHP版本 - 对于Nginx:通过不同的FastCGI端口区分版本
- 对于Apache:使用
-
CLI环境切换:
- sudo update-alternatives --config php
扩展安装失败处理
-
确保已安装开发工具包:
- sudo yum install php56-php-devel
-
通过PECL安装扩展:
- sudo pecl install apcu-4.0.11
-
检查扩展兼容性:
- 确认扩展版本支持PHP 5.6
- 查看扩展的依赖关系
性能问题排查
-
启用慢日志分析:
- slowlog = /var/log/php-fpm/slow.log
- request_slowlog_timeout = 5s
-
调整PHP-FPM池配置:
- pm = dynamic
- pm.max_children = 50
- pm.start_servers = 5
- pm.min_spare_servers = 5
- pm.max_spare_servers = 10
-
使用调试工具:
- XHProf
- Blackfire
- Tideways
维护与升级建议
虽然PHP 5.6已停止官方支持,但仍可采取以下措施保障系统安全:
-
安全补丁更新:
- 关注第三方仓库的安全更新
- 考虑使用CloudLinux提供的PHP 5.6安全补丁
-
迁移规划:
- 逐步将应用迁移到PHP 7.x或8.x
- 使用PHPCompatibility工具检查代码兼容性
-
隔离运行:
- 考虑在Docker容器中运行PHP 5.6应用
- 使用虚拟机隔离老旧系统
-
监控措施:
- 实施严格的日志监控
- 设置文件完整性检查
- 部署Web应用防火墙
本指南详细介绍了在Linux系统上安装PHP 5.6的四种主要方法:
- YUM安装 - 最适合CentOS/RHEL系统的简便方法
- APT安装 - Debian/Ubuntu用户的首选方案
- 源码编译 - 提供最大灵活性的高级安装方式
- 宝塔面板 - 适合新手用户的图形化方案
无论选择哪种安装方式,都建议:
- 根据实际需求选择必要的扩展模块
- 实施严格的安全配置
- 建立定期维护机制
对于生产环境,强烈建议制定长期升级计划,逐步将应用迁移到受支持的PHP版本,以获得更好的性能、安全性和功能支持,在过渡期间,可采取额外的安全措施来降低运行不受支持PHP版本的风险。
通过本指南提供的方法和最佳实践,您应该能够在Linux系统上成功部署和维护PHP 5.6环境,为传统应用提供稳定的运行基础。