概要
AWS で WordPress を使えないかと思って調べてたところ、丁度良いのがあったので試してみました。
サイトの構築は以下の手順通りでとても簡単に出来ました。
しかし WordPress と言ったら、一緒に phpMyAdmin も使うものだと思っていたら、phpMyAdmin にアクセス出来ませんでした。
その時調べたことをまとめました。
対応内容
phpMyAdmin をブラウザから見れるようにする
http://<パブリックIP>/phpmyadmin/index.php にアクセスると以下のようなエラーが表示されてブラウザからアクセスすることが出来ません。
For security reasons, this URL is only accessible using localhost (127.0.0.1) as the hostname.
これは Apache でローカルのアクセスのみ許可する設定を入れているのが原因です。
以下のサイトを参考に httpd.conf を書き換えて下さい。
$ vim /opt/bitnami/apps/phpmyadmin/conf/httpd-app.conf
# Apache 22 の設定
<IfVersion < 2.3 >
Order allow,deny
# Allow from 127.0.0.1
Allow from all # 追加
Satisfy all
</IfVersion>
# Apache 24 の設定
<IfVersion >= 2.3>
# Require local
Require all granted # 追加
</IfVersion>
書き換えが完了するとブラウザ経由で phpMyAdmin のログインページにアクセスすることができます。
ここのユーザ名とパスワードは実際に WordPress でアクセスする DB のユーザ名とパスワードを入力する必要があります。
DB のパスワードは /home/bitnami/apps/wordpress/htdocs/wp-config.php に記載されています。
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'bitnami_wordpress');
/** MySQL database username */
define('DB_USER', 'bn_wordpress');
/** MySQL database password */
define('DB_PASSWORD', 'xxxxxxx');
/** MySQL hostname */
define('DB_HOST', 'localhost:3306');
/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');
/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');
DB アカウントのパスワードを変更する
既存のパスワードだといざという時に出てこないので、自分の好きなパスワードに変更します。
$ mysql -u bn_wordpress -p bitnami_wordpress
Enter password: # パスワード入力
# ログイン中のユーザーのパスワードを変更する場合
mysql> SET PASSWORD = PASSWORD('xxxxxxxxx');
Query OK, 0 rows affected, 1 warning (0.01 sec)
これで新しいパスワードを利用して phpMyAdmin にログインすることが出来るようになりました。
しかし、このままだと WordPress 側で DB に接続している部分のパスワードが間違ったままなでアクセス出来ないので、先ほどの /home/bitnami/apps/wordpress/htdocs/wp-config.php を修正して下さい。
最後に
phpMyAdmin はブラウザ上で DB を好き勝って扱える便利だけど危険なツールなので AWS 側では非推奨にしているんだと思います。
もし、ブラウザからアクセスして利用するのであれば最低限以下の対応ぐらいはしておいた方が良いかもしれませんね。