迁移到新服务器上的PHP网站,使用浏览器访问时提示“不支持MySQL”等信息,如何处理?

问题描述

PHP网站(该网站需使用PHP执行程序代码)迁移到新服务器后,在使用浏览器访问时提示如下任意一种信息。

  • 系统不支持MySQL。
  • PHP不支持MySQL扩展。
  • 其他类似错误信息,示例如下。其他错误..jpeg

问题原因

因为MySQL扩展功能自PHP 5.5.0版本开始被废弃,并且从PHP 7.0.0版本开始被移除,当网站迁移到新服务器时一般会迁移到PHP 7.0.0及以上版本,由于网站迁移后的新服务器的PHP版本过高,网站程序无法再连接MySQL,导致该问题。

您可以使用php -v命令,查看当前服务器的PHP版本,如图所示。查看PHP版本..jpeg

解决方案

您可以在新服务器上安装并运行5.5.0以下版本的PHP源码包,来为网站提供MySQL扩展功能。

说明

本文操作步骤以在CentOS 7.9操作系统为例,具体操作以您实际的操作系统版本为准。

1、登录迁移后云服务器

2、执行如下命令,安装PHP依赖的软件包。

yum install -y gcc gcc-c++ libxml2 libxml2-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel curl curl-devel libxslt-devel openssl-devel

3、执行如下命令,从PHP官网下载PHP 5.5.0及以下版本的源码包。

wget https://www.php.net/distributions/php-5.4.45.tar.gz

4、安装PHP。

执行如下命令,解压下载的源码包。
tar -zxvf php-5.4.45.tar.gz

执行如下命令,进入源码包目录。
cd php-5.4.45

执行如下命令,安装PHP源码包。
./configure --prefix=/usr/local/php5.4.45 --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysql --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-sockets --enable-sysvsem --enable-xml --enable-zip

如果回显显示Thank you for using PHP,则表示PHP源码包配置成功,如图所示。

迁移到新服务器上的PHP网站,使用浏览器访问时提示“不支持MySQL”等信息,如何处理?

如果安装过程中缺少某个软件包,会出现相关的报错,您可以根据报错提示安装缺失的软件包,然后再重新安装PHP源码包。

5、执行如下命令,编译并安装PHP。

make && make install

等待PHP安装完成即可。

6、配置PHP运行版本为5.4.45版本。

执行如下命令,进入PHP的安装目录。

cd /usr/local/php5.4.45/etc


执行如下命令,把默认的配置文件复制为php-fpm.conf。

cp php-fpm.conf.default php-fpm.conf


执行如下命令,启动PHP服务。

/usr/local/php5.4.45/sbin/php-fpm 

7、重新访问网站。如果访问成功,该问题解决。

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/10122

(0)
凯影的头像凯影
上一篇 2023年11月16日 下午2:46
下一篇 2023年11月17日 下午2:36

相关推荐

  • 常见的windows网络管理命令

    ipconfig命令 ipconfig实用程序可用于显示当前机器的TCP/IP配置。 tracert命令 路由追踪命令,用来显示数据包到达目的主机所经过的路径。 一般添加 -d 参数 ,不将地址解析为计算机名,加快路由速度 nslookup命令 nslookup命令可以指定查询的类型,可以查到DNS记录的生存时间还可以指定使用哪个DNS服务器进行解释。 ip…

    2022年6月10日
    1.3K00
  • win10 22H2 更新后不能联网

    今天我的WIN10主机自动更新了,更新后就出现了显示无网络连接的问题,同一网络环境下其他主机正常,重装网卡驱动,更换USB有线,PCIE,USB无线网卡使用后均无法上网。 上网搜索后发现微软社区有多人反应此问题,大家谨慎更新。 首先查看更新记录 卸载更新 卸载最近安装时间的应用程序 卸载完成后window 10 就可以正常访问网络了。

    2024年6月5日
    1.7K00
  • 通过远程桌面连接Windows实例提示“远程连接计算机需要网络级别身份验证”怎么办?

    问题描述 使用远程桌面连接工具登录Windows系统的ECS实例失败,并提示“远程连接计算机需要网络级别身份验证”的报错,如下图所示。 问题原因 本地Windows主机的远程桌面连接工具版本过低,导致远程连接失败。 解决方案 下列操作以Windows Server 2012 R2 64位操作系统为例,其它版本的操作系统的配置可能有所差异,具体情况请参考相应操…

    2023年11月22日
    1.5K00
  • Linux 时间同步 Chrony

    Chrony是NTP(Network Time Protocol,网络时间协议,服务器时间同步的一种协议)的另一种实现,与ntpd不同,它可以更快且更准确地同步系统时钟,最大程度的减少时间和频率误差。 在CentOS6中,默认是使用ntpd来同步时间的,但ntpd同步时间并不理想,有可能需要数小时来同步时间。而且ntp也已经很老了。所以在Centos7中换成…

    2023年1月6日
    1.7K00
  • 使用cloud-init新建虚拟机后重启系统网络IP地址丢失

    cloud-init 是 Linux 平台的⼀个开源⼯具,可以为云平台的 Linux 虚拟机完成⼀系列系统初始化配置。作为⼀个⾮常驻服务,开机启动时执⾏后⽴即退出,不会监听任何端⼝。 环境 问题 解决方案 如果在firstboot部分之后不使用cloud init服务,解决此问题的方法是禁用并停止cloud init服务。在第一个引导步骤之后,禁用cloud…

    2023年2月2日
    2.2K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信