その過程で,phpMyAdmin をインストールした.今回は,yum からインストールできるようになったので,楽にクリアできるかと思っていたのだが,甘くはなかった.
まず Apache のドキュメントルートに,phpMyAdmin がインストールされたとばかり思っていたのだが,そこには影も形もなかった.探し回り,/usr/share/phpMyAdmin/ にインストールされていることがわかり一安心.ドキュメントルート内に,そのディレクトリへのリンクを置いて対処した.
さて phpMyAdmin のセットアップページを表示して,セットアップを開始しようと思ったのだが,それが表示できない.以前(phpMyAdmin2系,今回はphpMyAdmin3系)にはこのようなことはなかったと思う.それであれこれ調べてみると,phpMyAdminのディレクトリに,Apcheのアクセス制限がかかっているのに気づいた.納得してアクセス制限を解除して,セットアップページを表示することに成功した.
しかし表示されたセットアップページは,全く見たことのないもので,手探り状態で設定を行う事になった. なんとかセットアップを完了し,config.inc.php をphpMyAdminのディレクトリにコピーしようとした.ところがここでまた,トラブルに見舞われた.
セットアップページで生成したはずの config.inc.php を,phpMyAdminのディレクトリにコピーしても,phpMyAdminのトップページからログインができないのだ.これはどうしたものかと,途方に暮れつつ,あれこれ調べてみた.念のために,コピーした config.inc.php の中身を確認すると,セットアップの内容が反映されていなかった.どうやらコピー元とした config.inc.php が,セットアップページで生成された config.inc.php ではなかったようだった.するとセットアップで生成された config.inc.php は何処に?
FINDしてみると,いくつかのディレクトリに config.inc.php が見つかった.その中からセットアップの内容を反映している config.inc.php を探してみると,それは,/var/lib/phpMyAdmin/config/ に存在した.
中身を確認したので,今度は問題ないだろうと思い,phpMyAdmin のディレクトリにコピーし,再びログイン.しかしまたしてもログイン不能.壁にぶち当たってしまった.雰囲気としては,やはり phpMyAdmin が config.inc.php を読み込んでいない感じだった.
そこで考える.ということは,もしや設定ファイルである config.inc.php を格納する場所が違うのではないか?それでとりあえず config.inc.php の存在するすべてのディレクトリをチェック.その結果,候補としてが上がってきた. config.inc.phpを /etc/phpMyAdmin/ にコピーし,再びログインにチャレンジ.
今度はログインをクリアし,ようやく phpMyAdmin のトップページを表示することができた.しかしまたしても怪しげな表示が…
トップページの下方に, 「mcrypt 拡張をロードできません」との表示が,いかにもこれはやばいぞ!という感じで,赤く燃え上がっていたのだ!
確かに以前 phpMyAdmin を yum ではなかく,ダウンロードしてインストールしていた頃は,mcrypt も同時にインストールしていた.しかし今回は yum が依存関係を管理しており,phpMyAdmin をインストールした際に,同時にインストールされたと記憶していた.実際,確認してみると,それは既にインストール済みだった.
となると,警告メッセージの続きにあったように,「PHP の設定を確認してください」ということになる.しかしどこを設定すれば良いのか,すぐにはわからなかったので,ググってみた.すると下記のブログ記事を発見した.
さくらVPSとデジタルモノ好きの備忘録:この記事のおかげで,この警告メッセージの謎が解けた.インストールされた mcrypt の設定ファイル(PHP拡張設定ファイル)である mcrypt.ini の記述が間違っていたのだ.この記事にあるように訂正すると,あの不吉な赤いメッセージは消え去っていた.
CentOS6.4(64bit)「mcrypt 拡張をロードできません。PHP の設定を確認してください」で七転八倒
今思えば,Apache のエラーログに下記のメッセージが出力されていることには気づいていた.
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/module.so' - /usr/lib64/php/modules/module.so: cannot open shared object file: No such file or directory in Unknown on line 0ただ警告メッセージであり,別段運用上支障は無かったので,警告は知っていたのだが,放置していたのだった.エラーの Apache モジュール名が,module.so というあまりにも抽象的な名称だったので,まさかこれが mcrypt の設定に関係していたとは,考えてもみなかったのだ.
ということで,phpMyAdmin3系 のインストールと設定は,何とかクリアできた.お疲れ様でした<(_ _)>
0 件のコメント:
コメントを投稿