商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > linux系统PHP7降级安装PHP5,安装PHP5和PHP7

linux系统PHP7降级安装PHP5,安装PHP5和PHP7

  发布于2026-07-20 阅读(0)

扫一扫,手机访问

一、PHP5安装

PHP,全称是“超文本预处理语言”(Hypertext Preprocessor),它是一种运行在服务器端的脚本语言,能够直接嵌入到HTML文档中。说白了,就是让网页“活”起来的那层逻辑。官方源码下载地址是 www.php.net,下面我们直接进入安装环节。

1. 下载并解压源码安装包

首先把源码包下载到本地,然后解压:

[root@zlinux bin]# cd /usr/local/src/
[root@zlinux src]# wget http://cn2.php.net/distributions/php-5.6.30.tar.bz2
[root@zlinux src]# tar jxf php-5.6.30.tar.bz2

2. 配置安装

进入解压后的目录,执行 ./configure 进行配置,这一步是定制PHP功能的关键:

[root@zlinux src]# cd php-5.6.30/
[root@zlinux php-5.6.30]# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif

这里几个关键参数值得花点时间搞清楚:

  • --prefix=/usr/local/php 指定安装目录。
  • --with-apxs2=/usr/local/apache2/bin/apxs 这个apxs是Apache的一个工具,负责把PHP模块编译并注册到Apache里。
  • --with-config-file-path=/usr/local/php/etc 指定PHP配置文件php.ini的存放路径。
  • --with-mysql=/usr/local/mysql--with-mysqli=...--with-pdo-mysql=... 这三项都是用来指定MySQL相关库的路径,确保PHP能连接数据库。
  • 后面一大串 --with-libxml-dir--with-gd--with-jpeg-dir 等,都是开启各种扩展库(如GD图像处理、OpenSSL加密、mbstring多字节字符串等),基本上按需开启即可。

安装过程中可能遇到的错误

编译时系统环境不完整,很容易报错。下面列出最常见的几个问题及其解决方法:

错误1: configure: error: xml2-config not found. Please check your libxml2 installation.
解决方法:

[root@zlinux php-5.6.30]# yum list | grep libxml2
[root@zlinux php-5.6.30]# yum install -y libxml2-devel

错误2: configure: error: Cannot find OpenSSL's
解决方法:

[root@zlinux php-5.6.30]# yum install -y openssl-devel

错误3: configure: error: Please reinstall the BZip2 distribution
解决方法:

[root@zlinux php-5.6.30]# yum install -y bzip2-devel

错误4: configure: error: jpeglib.h not found.
解决方法:

[root@zlinux php-5.6.30]# yum install -y libjpeg-devel

错误5: configure: error: png.h not found.
解决方法:

[root@zlinux php-5.6.30]# yum install -y libpng-devel

错误6: configure: error: freetype-config not found.
解决方法:

[root@zlinux php-5.6.30]# yum install -y freetype-devel

错误7: configure: error: mcrypt.h not found. Please reinstall libmcrypt.
解决方法:

[root@zlinux php-5.6.30]# yum list | grep libmcrypt
libmcrypt.x86_64 2.5.8-13.el7 epel
libmcrypt-devel.x86_64 2.5.8-13.el7 epel
[root@zlinux php-5.6.30]# yum install -y libmcrypt-devel

如果系统里没有libmcrypt这个包,需要先安装EPEL扩展源:

[root@zlinux php-5.6.30]# yum install epel-release

3. 编译安装

配置通过后,依次执行编译和安装:

[root@zlinux php-5.6.30]# make
[root@zlinux php-5.6.30]# echo $?   // 检查上一步是否成功,返回0表示正常
[root@zlinux php-5.6.30]# make install
[root@zlinux php-5.6.30]# echo $?

养成每次执行完关键命令后都用 echo $? 检查一下的习惯,能避免在后续步骤中才发现问题。

4. 配置文件

源码目录下提供了两个示例配置文件:php.ini-development(开发环境用)和 php.ini-production(生产环境用)。一般生产环境建议使用后者:

[root@zlinux php-5.6.30]# cp php.ini-production /usr/local/php/etc/php.ini

之后可以用以下命令查看PHP配置是否正确加载:

[root@zlinux php-5.6.30]# /usr/local/php/bin/php -i | less

5. 查看是否被Apache正确调用

在Apache的配置文件中检查PHP模块是否已加载:

[root@zlinux php-5.6.30]# cat /usr/local/apache2/conf/httpd.conf | grep php
LoadModule php5_module modules/libphp5.so

看到这一行,说明PHP5已经成功被Apache加载了。

二、PHP7安装

PHP7的安装过程与PHP5基本一致,只需要把源码包换成PHP7的版本,然后重复上述步骤即可。但有一点需要特别注意:同一个Apache服务器可以同时存在多个PHP版本,通过配置文件中的 LoadModule 行来切换。例如,如果你同时安装了PHP5和PHP7,那么在 httpd.conf 中会有类似这样的两行:

73dfb960d3b7c0a200fbcb31a69925a4.png

如果想停用某个版本,只需要在对应的 LoadModule 前面加上 # 注释掉即可。比如暂时不用PHP7,就注释掉 LoadModule php7_module 那一行,重启Apache后生效。

本文转载于:https://blog.csdn.net/weixin_34603379/article/details/116856273 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注