こんにちはー、ニアです!
今回は、PHPのモジュールをアップデート後にphpMyAdminを開くとエラー画面が表示される時に、チェックしておきたいポイントを紹介します。
1. 問題 : PHPのモジュールをアップデートした後にphpMyAdminにアクセスするとエラーメッセージが表示される
PHPのモジュールをアップデートした後にphpMyAdminにアクセスすると、以下のようなエラーメッセージが表示されることがあります。
phpMyAdmin – Error
Error during session start; please check your PHP and/or web server log file and configure your installation properly. Also ensure that cookies are enabled in your browser.
phpMyAdmin – エラー
セッション開始エラー; PHP及びWebサーバーのログファイルを確認し、インストールの設定を正しく設定してください。また、ブラウザのCookieが有効になっていることを確認してください。
原因として考えられるのは、PHPのセッションを保存するファイルやディレクトリ名の所有者及びグループが、アップデートによって変更された可能性があります。
2. 解決方法 : セッションフォルダーの所有者情報を正しく設定する
PHPのセッションフォルダーの場所はデフォルトで、以下のようになっています。
PHPのバージョン | セッションフォルダーの場所 |
---|---|
5.x | /var/lib/php/session |
7.x | /var/lib/php7/session |
なお、セッションフォルダーの場所は、phpinfo関数を呼び出して出力された表、もしくはphp.iniファイルにある「session.save_path」の所に記述されています。
ターミナル上で「ls -al」コマンドを実行して、セッションフォルダーの所有者情報を調べます。
# PHP 5.x系の場合
cd /var/lib/php
# PHP 7.x系の場合
cd /var/lib/php7
ls -al
本ブログを運用しているサーバー環境の場合、セッションフォルダーの所有者情報は以下ように、rootとなっていました。
ls -al
total 8
drwxrwx--- 4 root root 36 Jun 28 11:06 .
drwxr-xr-x. 34 root root 4096 Jul 16 03:31 ..
drwxrwx--- 2 root root 4096 Jul 16 14:33 session
drwxrwx--- 2 root root 6 Jun 28 11:06 wsdlcache
Webサーバーからそれらのフォルダーへアクセス可能にするために、chownコマンドを実行して、所有者情報を以下のように設定します。
フォルダー・ファイル | 所有者 | 所有グループ |
---|---|---|
. | root | www |
sessionフォルダー及びその中のファイル | nginx(nginxの場合) httpd(Apacheの場合) | www |
wsdlcacheフォルダー及びその中のファイル | root | www |
ls -al
total 8
drwxrwx--- 4 root www 36 Jun 28 11:06 .
drwxr-xr-x. 34 root root 4096 Jul 16 03:31 ..
drwxrwx--- 2 nginx www 4096 Jul 16 14:33 session
drwxrwx--- 2 root www 6 Jun 28 11:06 wsdlcache
これで、phpMyAdminに正しくアクセスできるようになりました。
3. おわりに
今回は、PHPのモジュールをアップデート後にphpMyAdminにアクセスするとエラー画面が表示される時に、チェックしておきたいポイントと解決方法を、このブログを運用しているサーバー環境で起きた時の経験を交えて紹介しました。
同じようなトラブルに遭遇した時のお役に立てたら幸いです。
[END]
コメント