
PHPを実行したり、「# php -v」でphpのバージョンを調べたりすると以下のようなエラーメッセージが出るときがあります。
「PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/lib64/php/modules/msql.so’ – /usr/lib64/php/modules/msql.so: cannot open shared object file: No such file or directory in Unknown on line 0」
このエラーの対処方法は以下のようになります。
エラーの確認
phpのバージョンを調べるときにコマンドを入力したらエラー(警告)が出ました。
#php -v [実行結果] PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/msql.so' - /usr/lib64/php/modules/msql.so: cannot open shared object file: No such file or directory in Unknown on line 0 PHP 5.4.16 (cli) (built: Nov 6 2016 00:29:02) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
php.iniの編集
16行目が下記のようにコメントアウトされているとエラーになります。php.iniではコメントアウトは「#」ではなく「;」になっています。
デフォルトではコメントアウトしてある状態ですが、自分の場合はphpMyAdminを使うとき、php-mysqlパッケージをインストールし、その時に「;」を外してしまっていました。(外す必要はなかったようです)
;;;;;;;;;;;;;;;;;;;;;; ; Dynamic Extensions ; ;;;;;;;;;;;;;;;;;;;;;; ; If you wish to have an extension loaded automatically, use the following ; syntax: ; ; extension=modulename.extension ; ; For example, on Windows: ; ; extension=msql.dll ; ; ... or under UNIX: ; extension=msql.so ; ; ... or with a path: ; ; extension=/path/to/extension/msql.so ; ; If you only provide the name of the extension, PHP will look for it in its ; default extension directory.
16行目を「; extension=msql.so」に修正したらエラーメッセージが消えました。