php5的程序如何安装在php7,PHP5及PHP7的安装
安装PHP5需下载源码包,解压后配置编译参数,包括Apache集成、MySQL支持等。过程中可能遇到依赖缺失错误,需安装相应开发包。配置成功后编译安装,并将配置文件复制到指定目录。PHP7安装流程类似,但配置参数略有调整。安装后需在Apache配置中管理模块加载,通过注释不同版本的模块行来切换PHP版本。
一、安装PHP5

首先,得去官网www.php.net把源码包弄下来。目前的主流版本,依然是5.6和7.1系列。
接下来,咱们进入工作目录:
cd /usr/local/src
然后,使用wget命令下载PHP 5.6.32的源码包:
wget http://cn2.php.net/distributions/php-5.6.32.tar.bz2
下载完成后,解压这个压缩包:
tar -jxvf php-5.6.32.tar.bz2
解压后,进入解压出来的目录:
cd php-5.6.32/
重头戏来了——编译配置。这一步参数比较多,目的是让PHP支持我们需要的各种功能,比如Apache集成、MySQL连接、图像处理等:
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/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-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
编译过程很少一帆风顺,遇到错误是常态。比如,你可能会碰到第一个错误:
错误1:configure: error: freetype-config not found
解决方案:
CentOS系统执行:yum install freetype-devel
Debian/Ubuntu系统执行:apt-get install libfreetype6-dev
解决了上一个,下一个可能接踵而至:
错误2:configure: error: mcrypt.h not found. Please reinstall libmcrypt.
解决方案:
对于CentOS:yum install libmcrypt libmcrypt-devel
是不是觉得这次遇到的错误有点少?别急,有时候运气也是实力的一部分。
配置完成后,别急着执行make,先检查一下配置是否真正成功:
echo $?
如果返回0,恭喜你,可以继续了。
接下来就是编译和安装:
make & make install
这里有个小坑需要注意:如果在./configure之后直接make,有时会报错 libtool: link: `ext/date/php_date.lo' is not a valid libtool object。别慌,执行一下make clean清理上次的编译结果,然后再重新make,通常就能解决。具体原因可能是某些脚本的执行顺序问题,不过能解决就好。
安装完成后,去安装目录看看成果:
ls /usr/local/php/
核心的可执行文件都在/bin目录下,可以查看一下它的大小:
du -sh /usr/local/php/bin/
这里有个关键点:PHP与Apache结合的关键在于一个叫libphp5.so的模块文件。它被安装在了Apache的模块目录里:/usr/local/apache/modules/libphp5.so。即使你后来删除了整个PHP目录,只要这个文件还在,Apache就能继续调用PHP 5.6的功能。
想看看PHP加载了哪些模块吗?执行:
/usr/local/php/bin/php -m
最后一步,配置PHP。我们需要将生产环境的配置文件模板复制到指定位置:
cp php.ini-production /usr/local/php/etc/php.ini
这个路径(/usr/local/php/etc/)就是之前编译时通过--with-config-file-path参数指定的配置文件家。复制完成后,你可以用以下命令验证配置信息,其中就包含了配置文件的加载路径:
/usr/local/php/bin/php -i | less
在复制之前,这个目录是空的,所以查不到。复制之后再用这条命令,就能看到完整的配置信息了。
二、安装PHP7
说完了PHP5,咱们再来看看PHP7的安装,流程相似,但细节上有些许不同。
首先,同样进入源码目录:
cd /usr/local/src
下载PHP 7.1.6的源码包:
wget http://cn2.php.net/distributions/php-7.1.6.tar.bz2
下载后解压:
tar -jxvf php-7.1.6.tar.bz2
进入解压后的目录:
cd php-7.1.6
进行编译配置。注意,这里安装前缀和配置路径换成了php7,并且参数也有些微调(例如去掉了旧的--with-mysql选项,因为PHP7中已移除):
./configure --prefix=/usr/local/php7 --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/php7/etc --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
配置无误后,执行编译和安装:
make & make install
安装完成后,一个有趣的情况出现了:你的Apache现在可能同时加载了PHP5和PHP7的模块。可以通过以下命令查看Apache到底加载了哪些模块:
/usr/local/apache/bin/apachectl -M
你会看到类似php5_module或php7_module的条目。那么,Apache到底用哪个PHP版本来解析你的脚本呢?这取决于配置文件。
关键的一步来了:编辑Apache的配置文件:
vim /usr/local/apache/conf/httpd.conf
在文件里搜索php5.so或php7.so。找到对应的LoadModule指令。不想用哪个版本,就把哪一行用#注释掉。Apache只会使用未被注释的那个模块。这样一来,你就能在同一台服务器上,灵活切换PHP的运行版本了。
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















