如何在运行 Virtualmin 控制面板的 ubuntu 16.04 上安装 php 5.6

Posted

技术标签:

【中文标题】如何在运行 Virtualmin 控制面板的 ubuntu 16.04 上安装 php 5.6【英文标题】:how to install php 5.6 on ubuntu 16.04 running Virtualmin Control Panel 【发布时间】:2019-02-12 05:17:12 【问题描述】:

我已经多次尝试让 php 5.6 在 ubuntu 16.04 上运行

在尝试浏览 http://domain.com/phpinfo.php 以检查哪个版本的 php 处于活动状态时,我不断收到服务器错误 500(服务器也有 7.0、7.1 和 7.2)

我在尝试运行 php 7.1 时也遇到了同样的错误(7.0 和 7.2 运行没有问题,并且我的网站在 virtualmin 服务器上运行。

我在这里查看了有关此类事情的各种答案,但老实说,答案通常如此破碎和不同,我无法找到可靠且有效的单一程序。

有人帮忙吗?

例如,以下将 php5.6 安装在 /opt 目录中的 ispconfig 3 教程是否可以与 virtualmin 一起使用? (https://www.howtoforge.com/tutorial/how-to-install-php-5-6-on-ubuntu-16-04/)

我的假设是上面的教程会起作用,我只需要告诉 virtualmin php 5.6 二进制文件在 /opt/ 中的位置? (看到这个线程...https://www.virtualmin.com/node/40004)

【问题讨论】:

【参考方案1】:

默认情况下,Ubuntu 16.04 服务器分配 PHP 7.07 或更高版本。如果您想在您的服务器上允许/分配 PHP 5.6,那么您必须通过以下命令手动安装它:

第 1 步:第 1 步:更新 Apt-Get

Linux command: apt-get update && apt-get upgrade.

第 2 步:安装 PHP 5.6

使用这两个命令安装 PHP5.6 存储库。

Linux command: 
apt-get install -y software-properties-common
add-apt-repository ppa:ondrej/php
apt-get update
apt-get install -y php5.6

第 3 步:将 PHP 7.0 切换到 PHP 5.6

从 PHP 7.0 切换到 PHP 5.6,同时重新启动 Apache 以识别更改:

a2dismod php7.0 ; a2enmod php5.6 ; service apache2 restart

通过建立一个 PHP 信息页面来验证 PHP 5.6 是否在 Apache 上运行。为此,请在名为 infopage.php 的文件中使用以下代码并将其上传到 /var/www/html 目录。

<? phpinfo(); ?>

【讨论】:

【参考方案2】:

首先添加ppa:ondrej/php 仓库:

sudo -s  
apt-get update  
apt-get install -y software-properties-common  
add-apt-repository ppa:ondrej/php  

如果此时它抛出一个 CPG 错误,例如:

Reading package lists... Done  
W: GPG error: http://ppa.launchpad.net/ondrej/php/ubuntu xenial InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY <THE_KEY>
W: The repository 'http://ppa.launchpad.net/ondrej/php/ubuntu xenial InRelease' is not signed.
N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
N: See apt-secure(8) manpage for repository creation and user configuration details.

..注意第二行显示THE_KEY,然后用:

解决
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <THE_KEY>

最后:

apt-get update
apt-get install -y php5.6
php -v

【讨论】:

在生产服务器上使用 ppa 是否安全?我在其他论坛上读过不应该使用它? 有些比其他的维护得更好。被推荐的那个有很好的可靠维护历史。我们为需要它的人使用并推荐它(我在 Virtualmin 工作),即使我们不推荐 PPA,在一般情况下。与往常一样,在使用非核心内容时,请密切关注以确保其保持最新状态。

以上是关于如何在运行 Virtualmin 控制面板的 ubuntu 16.04 上安装 php 5.6的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Virtualmin 子服务器中设置文档根目录?

如何在 CentOS7 的 Virtualmin 上启用/安装 HTTP/2

在 vps 中安装 virtualmin 的问题

安装后如何配置Virtualmin以使用域名访问

如何在 Virtualmin 上禁用 root 登录

通过 webmin/virtualmin 启动 apache 时权限被拒绝