我正在将一些网站从一台服务器移到一台新服务器上。移动后,一些网站无法正常工作。其中一个网站显示“您的 PHP 版本不支持 MySQL”。搜索后,这似乎是由弃用的 mysql 扩展引起的。所以我认为将 php 版本更改为与旧服务器相同的版本可以解决这个问题 - 旧服务器 php 版本是 5.4.45
我尝试遵循一些类似问题的答案,但没有任何效果。我做了这个,但由于 mysql 在 php5.6 中已被弃用,这无法解决我的问题: 如何在 Ubuntu 16.04 上从 PHP 7 降级到 PHP 5.6?
也尝试过这些: 如何在仍受支持的 Ubuntu 版本中安装不同的(升级或降级)PHP 版本?
如何在 Ubuntu 14.04(使用 LAMP 安装)中将 PHP 从 5.5.9 降级到 5.4
我猜想这些问题已经存在好几年了,可能不再有可用资源。
有人能告诉我一种现在可以安装 php 5.4 的方法吗?
附加信息:-ubuntu 16.04
答案1
简短的回答是,你不需要。5.4 不再受支持,并且存在已知的无法修复的漏洞。
唯一可能的方法是找到源代码并自己编译。
然而,这一切都是徒劳的。使用sudo apt install php5.6-mysql
如下所述在 Xenial(16.04)上安装 PHP 5.6会给你你需要的东西。
您需要了解弃用并不等同于删除。mysql() 仍可在 5.5/5.6 中工作。不建议继续使用它,但它确实有效,您只需关闭日志记录即可摆脱弃用警告。
php.ini
error_reporting = E_ALL & ~E_DEPRECATED & ~E_NOTICE
如果您收到与未定义函数相关的错误,则意味着无法调用您尝试使用的函数。就您而言,这很可能是由于缺少 php5.6-mysql 模块。
除了 php5.6-mysql 之外,下面一行还包含一些您最有可能需要的基本模块。
sudo apt-get install php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-xml