問題描述
centos 7.6系統。www/html裏頁面打不開。
- 查看httpd和mariadb狀態,都是active
systemctl status httpd
systemctl status mariadb
但是狀態一覽,有異常
- mariadb
Status: "Taking your SQL requests now..."
- httpd
Status: "Total requests: 1; Current requests/sec: 0; Current traffic: 0 B/sec"
- 查看httpd的錯誤日誌文件
cd /var/log/httpd
tail error_log
- 報錯,主要 Headers and client library minor version mismatch
[Tue Jun 23 13:57:03.584917 2020] [:error] [pid 26888] [client 111.22.178.34:42143] PHP Warning: mysqli_connect(): Headers and client library minor version mismatch. Headers:50564 Library:100144 in /var/www/html/ocsreports/require/function_commun.php on line 161, referer: http://175.24.84.82/ocsreports/index.php?function=admin_info
解決方法
- 查看php client版本,版本不一致
php -i|grep Client
IMAP c-Client Version => 2007f
Client API version => 10.1.44-MariaDB
Client API library version => 10.1.44-MariaDB
Client API header version => 5.5.64-MariaDB
Client API version => 10.1.44-MariaDB
Soap Client => enabled
- 刪除php-mysql,安裝php-mysqlnd
yum remove php-mysql
yum install php-mysqlnd
- 重啓服務
systemctl restart httpd
systemctl restart mysqld
- 再次查看,此時版本一致
php -i|grep Client
IMAP c-Client Version => 2007f
Client API version => mysqlnd 5.0.10 - 20111026 - $Id: e707c415db32080b3752b232487a435ee0372157 $
Client API library version => mysqlnd 5.0.10 - 20111026 - $Id: e707c415db32080b3752b232487a435ee0372157 $
Client API version => mysqlnd 5.0.10 - 20111026 - $Id: e707c415db32080b3752b232487a435ee0372157 $
Soap Client => enabled
推薦使用php-mysqlnd。而不是php-mysql,php-mysql從PHP5起已經被廢棄,並別從PHP7開始已經被移除。