【问题标题】:Cannot switch PHP version from 8.0 to 7.4 on Ubutnu 20.04无法在 Ubuntu 20.04 上将 PHP 版本从 8.0 切换到 7.4
【发布时间】:2021-07-06 18:35:14
【问题描述】:

我需要在 Ubutnu 20.04 上将 PHP 版本从 8.0 切换到 7.4。我尝试运行以下命令(但没有成功):

sudo a2dismod php8.0
sudo a2enmod php7.4
sudo service apache2 restart

当我打开一个带有 PHP 信息 <?php phpinfo(); ?> 的本地网页时,PHP 版本仍然是 8.0.3 而不是 7.4。

请注意,当我执行命令 sudo a2enmod php7.4 时,我得到以下输出:

dan@dan:~$ sudo a2enmod php7.4
Considering dependency mpm_prefork for php7.4:
Considering conflict mpm_event for mpm_prefork:
Considering conflict mpm_worker for mpm_prefork:
Enabling module mpm_prefork.
Considering conflict php5 for php7.4:
Enabling module php7.4.
To activate the new configuration, you need to run:
  systemctl restart apache2

也许这就是问题的根源?

【问题讨论】:

标签: php apache ubuntu webserver


【解决方案1】:

使用update-alternatives设置默认php版本:

sudo update-alternatives --set php /usr/bin/php7.4

如果您收到错误no alternatives for php,请参阅my answer on U&Lphp 添加到update-alternatives(将python 替换为php)。

【讨论】:

  • 谢谢,该命令会在命令行上更改 PHP 版本,但不会在网络服务器上更改。请注意,Apache PHP 模块和 PHP 命令行二进制文件是两个不同的东西:superuser.com/questions/969861/…
  • 这是切换 CLI 的好答案。在 Ubuntu 20.04 上,我升级了 PHP。 Apache 升级到 7.4.23,但 CLI 升级到 8.0.10。这个答案向我展示了如何将 CLI 切换回 7.4.23,这是 Apache2 和 CLI 的目标。
【解决方案2】:

我找到了答案。问题是 apache 仍在尝试使用 php-fpm-8.0,为了解决这个问题,我只是安装了 php7.4-fpm 并使用以下命令禁用了 php8.0-fpm:

sudo systemctl stop php8.0-fpm
sudo systemctl disable php8.0-fpm

sudo apt install php7.4-fpm
sudo systemctl start php7.4-fpm
sudo systemctl enable php7.4-fpm

sudo a2disconf php8.0-fpm

【讨论】:

  • 感谢您的回复,但它对我不起作用:(
猜你喜欢
  • 1970-01-01
  • 2020-10-09
  • 2021-04-25
  • 1970-01-01
  • 2022-01-07
  • 2021-01-12
  • 1970-01-01
  • 2023-03-02
  • 2020-05-27
相关资源
最近更新 更多