如何清除 PHP 7、安装 PHP 5.6 并仍然获得 phpMyAdmin?

如何清除 PHP 7、安装 PHP 5.6 并仍然获得 phpMyAdmin?

我有一台本地测试机,全新安装了 Ubuntu Mate 16.10。默认 PHP 安装是 PHP 7。但是,我需要运行 php 5.6 才能与我为其开发的服务器保持一致。

我尝试按照这个答案, 也这个答案

我似乎可以同时安装 PHP 7 和 5.6,但切换 Apache 以使用 PHP 5.6,但在尝试设置后,出现了问题。我可能错了,但看起来 Apache 仍在连接到一些 PHP 7 模块,或者至少 PHP 5.6 安装没有完全成功。无论发生什么,我的网站都崩溃了。

因此,我想我可能会尝试清除 PHP 7,但是,这会带走一些我想保留的模块,例如 phpMyAdmin。如果我尝试通过 apt-get 安装 phpMyAdmin,则会安装 PHP 7 模块。

我担心我的修改会让系统变得有点乱,所以我想清理一下,重新开始。为此,我想清除 PHP 7,安装 PHP 5.6,并安装 phpMyAdmin。

或者,至少我需要一个与我为其开发的服务器完全一样的系统,其中安装了 PHP 5.6(换句话说,清除 PHP 7 不是目标,让 PHP 7 不会以任何方式干扰 PHP 5.6 才是目标)。我该如何实现这一点?

更新:

按照评论中的一些建议后,我拥有了一个可运行的 PHP 5.6 环境,它允许我的网站在本地测试机器上以与在服务器上相同的方式运行。

phpMyAdmin 似乎也已安装,我的意思是,我已经通过命令行上的 apt-get 安装了它,并且安装过程没有错误。但它不起作用。当我加载 phpMyAdmin 时,我只看到一个空白屏幕。

我访问过的各种网站都建议解决方案应该是运行sudo apt-get install --reinstall phpmyadminsudo apt install php-gettextsudo dpkg-reconfigure phpmyadmin,但这些都无济于事。现在,我不知道 phpMyAdmin 是否因为 PHP 7 和 PHP 5.6 之间的冲突而损坏,或者是否存在其他问题。

答案1

您可能需要禁用proxy_fcgiapache 模块:

sudo a2dismod proxy_fcgi proxy; sudo service apache2 restart
  1. 1.重新安装 PHP 5.6

实际上不需要删除php7.0,您可以一起安装 php5.6(因为您会遇到依赖phpmyadminphp7.0 所需包的问题)

假设libapache2-mod-php有一种适合您在 Apache 中启用 PHP 的方法,您可以按如下方式进行:

sudo add-apt-repository ppa:ondrej/php

sudo apt-get update

sudo apt-get install php7.0 php5.6 php5.6-mysql php-gettext php5.6-mbstring php-xdebug libapache2-mod-php5.6 libapache2-mod-php7.0

相关内容