迁移到新服务器上的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

相关推荐

  • 用户管理命令

    useradd 命令 创建普通用户 指定uid和组 创建用户,禁止登录且不创建家目录 使用 -M -s 参数 userdel命令 删除用户与相关文件 案例 passwd命令 passwd命令修改用户密码和过期时间等,root可以改普通用户,反之不可以 一条命令设置密码,企业常用 echo “密码” | passwd — stdin 用户名 –s…

    2022年6月11日
    1.7K00
  • Redis删除特定前缀key的优雅实现

    Redis中没有批量删除特定前缀key的指令,但我们往往需要根据前缀来删除,那么究竟该怎么做呢?可能你一通搜索后会得到下边的答案 直接在linux下通过redis的keys命令匹配到所有的key,然后调用系统命令xargs来删除,看似非常完美,实则风险巨大 因为Redis的单线程服务模式,命令keys会阻塞正常的业务请求,如果你一次keys匹配的数量过多或者…

    2023年1月17日
    1.6K00
  • Route命令详解

    route命令用来显示并设置Linux内核中的网络路由表,route命令设置的路由主要是静态路由。要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。 在Linux系统中设置路由通常是为了解决以下问题:该Linux系统在一个局域网中,局域网中有一个网关,能够让机器访问Internet,那么就需要将这台机器的ip地址…

    2023年4月7日
    1.4K00
  • 如何自动备份文件到群晖NAS

    如何将电脑、服务器上的文件自动备份到群晖NAS? 方法有很多,今天给大家介绍两种最简单的方法: 方法1:Windows内置工具自动备份文件到群晖NAS 以下是使用Windows内置工具“备份和还原”,实现自动备份文件到群晖NAS的操作步骤。 步骤1. 打开控制面板,然后点击“备份和还原(Windows 7)”,然后点击右侧的“设置备份” 步骤2. 在设置备份…

    2024年5月30日
    1.3K00
  • 服务器中毒了—菜是原罪

    先使用网络排查三板斧:(1)打开浏览器访问域名,发现无法建立连接。(2)Ping域名,发现域名可以正常解析。(3)Telnet IP+Port,发现Telnet不通。 周五朋友生日,刚吃完饭准备唱歌,接到消息说业务支付失败,问题是银行前置机无法正常和银行建立连接。 我麻了…… 这台服务器是银行那边亲自搭的,说实话我很少去管理:1、是一…

    2023年12月8日
    95600

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信