ここではDebian Jessieを使用していますが、エラーを表示するいくつかのPHPページがあります。
A PHP Error was encountered
Severity: Warning
Message: mysqli::real_connect(): Headers and client library minor version mismatch. Headers:50553 Library:50630
Filename: mysqli/mysqli_driver.php
パッケージはphp5
です 。5.6.30+dfsg-0+deb8u1
php5-mysql
5.6.30+dfsg-0+deb8u1
どちらも標準的な Debian パッケージであり、コンポーネントのどの部分も直接コンパイルしませんでした。
適切なアップデートとアップグレードを試み、php5-mysql
Apacheを再インストールして再起動しましたが、問題は解決しませんでした。
phpinfo()
まだ文句を言っていますphp5-mysql
。
何をすべきか?
答え1
これはバグのあるラッパーのようですphp5-mysql
。この記事で関連する質問を見つけました。ヘッダーとクライアントライブラリのマイナーバージョンが一致しません。。
許容される回答ではありませんが、そのリンクで最も関連性の高い回答は次のとおりです。
新しいMySQL 5.6シリーズでは、php5-mysqlの代わりにphp5-mysqlndをインストールする必要があります。
このバージョンのmysqlドライバをアンインストールしてください。
sudo apt-get php5-mysqlをアンインストールしてインストールする
sudo apt-get インストール php5-mysqlnd
ただし、依存関係を一貫して維持するには、削除するのがphp5-mysql
最善の方法ではありません。
sudo apt-get install php5-mysqlnd
依存関係を削除してください。php5-mysql
しかし、インストールするphp5-mysqlnd
。
packages.debian.orgから:パッケージ: php5-mysqlnd
php5用MySQLモジュール(ネイティブドライバ)
このパッケージは、PHPスクリプトから直接MySQLデータベースに接続するためのモジュールを提供します。これには、すべてのバージョンのMySQLに接続するために使用できる汎用の「mysql」モジュール、MySQL 4.1以降用の拡張された「mysqli」モジュール、およびPHP Data Objects拡張で使用するためのpdo_mysqlモジュールが含まれています。
完了すると、sudo apt-get install php5-mysqlnd
関連ページが警告なしに正常に機能し始めました。
しかし、まだ/iso-8859-1を使用している他のページの他の前のページには、latin1
UTF-8を強制的に使用するように強制されるなど、奇妙な文字が表示され始めていますphp5-mysql
。