ローカル環境用のWebサーバー環境を構築中で、MySQLの設定などをブラウザ上で行えるphpMyAdminをインストールする中、いつもハマってしまうので、作業工程の記録をここで残しておきます。
ログイン画面が見れず404エラー
ファイル群を任意のディレクトリーにUPした際に、所有者とパーミッションの変更を行います。
// 親ディレクトリとそれ以下の所有者を変更
sudo chown -R www-data:www-data /var/www/html/phpMyAdmin
404エラーは回避しても、ファイルのアクセスを拒否られるエラーが発生したため、今度はファイルとディレクトリのパーミッションを変更します。
// ディレクトリのパーミッションを755にする
find /var/www/html/phpMyAdmin -type d -exec chmod 755 {} +
// PHPファイルのパーミッションを700にする
find /var/www/html/phpMyAdmin -name "*.php" -exec chmod 700 {} \;
ログイン画面が表示したらログインするも弾かれるため、コンフィグの設定変更を行います。
ローカル環境用ですから別にphpMyAdminのログインはパスワード無しに気にしません。そのため、パスワード無しでログインできるよう変更します。
ターミナルでMySQLにログイン
mysql -u root
rootのパスワードを無しで登録
set password for root@localhost=password('');
config.inc.phpファイルをconfig.sample.inc.phpファイルからコピー生成し、中身を変更します。
$cfg['Servers'][$i]['AllowNoPassword'] = false;
↓
$cfg['Servers'][$i]['AllowNoPassword'] = true;
ブラウザでログイン画面からIDにrootを入力しパスワード無しでログインを試みる
これでログイン出来たらOK。