如何在不卸载 PHP 7.4 的情况下降级或使用 PHP 7.2?是不是可以默认使用 PHP 7.2 而不是最新版本?
Posted
技术标签:
【中文标题】如何在不卸载 PHP 7.4 的情况下降级或使用 PHP 7.2?是不是可以默认使用 PHP 7.2 而不是最新版本?【英文标题】:How can I downgrade or use PHP 7.2 without uninstalling PHP 7.4? Is it possible to use PHP 7.2 as default instead of the latest version?如何在不卸载 PHP 7.4 的情况下降级或使用 PHP 7.2?是否可以默认使用 PHP 7.2 而不是最新版本? 【发布时间】:2020-05-04 00:36:07 【问题描述】:我使用的是 linux Ubuntu 18.04 我想恢复到以前版本的 php。
我看过要求我卸载最新版本的教程,现在我想问是否有解决此问题的方法,以便我可以轻松地从使用 7.2 或 7.4 切换。
【问题讨论】:
update-alternatives --list php
【参考方案1】:
您可以在ubuntu
中安装多个php
版本,并且可以禁用您不需要的版本,例如:
sudo a2dismod php7.4
sudo a2enmod php7.2
【讨论】:
【参考方案2】:是的,你可以。
1- 要停止运行 PHP 7.4,请运行以下命令为 Apache2 禁用它:
sudo a2dismod php7.4
2- 然后运行以下命令以启用 PHP 7.2 供 Apache2 使用:
sudo a2enmod php7.2
3- 通过运行以下命令重新启动 Apache2 以应用更改:
sudo systemctl restart apache2.service
【讨论】:
【参考方案3】:我也遇到了同样的问题,解决方法如下:
sudo update-alternatives --config php
现在选择你想要的版本,谢谢
【讨论】:
我使用的是 Ubuntu 18.04.5 LTS,我不知道为什么,但是 PHP 已针对 CLI 更新到版本 8。这显然破坏了我所有的网站。使用此命令可立即恢复 PHP 7.4。请注意,Apache 的 PHP8 mod 也已安装,但未激活。 太棒了!我的网站因为在我没有意识到的情况下被拖到第 8 版而损坏。【参考方案4】:从 7.4 降级到 7.2
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php7.2
sudo apt-get install php7.2-cli php7.2-common php7.2-json php7.2-opcache php7.2-mysql php7.2-mbstring php7.2-zip php7.2-fpm php7.2-intl php7.2-simplexml
sudo a2dismod php7.4
sudo a2enmod php7.2
sudo service apache2 restart
sudo update-alternatives --set php /usr/bin/php7.2
sudo update-alternatives --set phar /usr/bin/phar7.2
sudo update-alternatives --set phar.phar /usr/bin/phar.phar7.2
sudo update-alternatives --set phpize /usr/bin/phpize7.2
sudo update-alternatives --set php-config /usr/bin/php-config7.2
【讨论】:
【参考方案5】:如果你是 nginx 用户。首先安装 php 7.4 所有必要的项目。
sudo apt-get update
sudo apt -y install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php7.4-cli php7.4-json php7.4-common php7.4-mysql php7.4-zip php7.4-gd php7.4-mbstring php7.4-curl php7.4-xml php7.4-bcmath php7.4-fpm -y
systemctl status php7.2-fpm.service #get previous version id
kill -9 873 #id will be replace with your php.7.2-fpm
service php7.4-fpm restart
systemctl status php7.4-fpm.service #check php status
完成了,一切都好
【讨论】:
以上是关于如何在不卸载 PHP 7.4 的情况下降级或使用 PHP 7.2?是不是可以默认使用 PHP 7.2 而不是最新版本?的主要内容,如果未能解决你的问题,请参考以下文章
如何在不使用 Timer 而是使用 Threads 的情况下实现平滑下降的 JLabel
如何在不卸载powershell的情况下,有效禁用/启用powershel