ローカルでWordPressを動作させるには、VritualBoxなどの仮想マシンを作る方法の他、MAMPなどのツールを使う方法もあります。
MAMPでWordPressをインストールしようとしたら、データベース接続確立エラーとなり、ハマったのでメモしておきますね。
原因 MySQLのPorts番号
MAMPを初期設定のまま使えるのなら、問題ないのですが、ポートに空が無くて初期設定以外のポート番号にしたときに、データベース接続確立エラーが発生します。
MAMPの初期設定のPortsは、Apache、Nginxが80でMySQLが3306ですが、3306をすでに使用しているため、3307にしました。
対策 wp-config.phpを自作する
WordPressをダウンロードして解凍すると、wordpressフォルダにwp-config-sample.phpというファイルがあります。
wp-config-sample.phpをATOMなどUTF-8Nで編集保存できるテキストエディタで開きます。
Windows の “メモ帳” でこのファイルを編集しないでください !
wp-config-sample.phpの編集
27行目から、
// ** MySQL 設定 - この情報はホスティング先から入手してください。 ** // /** WordPress のためのデータベース名 */ define( 'DB_NAME', 'database_name_here' ); /** MySQL データベースのユーザー名 */ define( 'DB_USER', 'username_here' ); /** MySQL データベースのパスワード */ define( 'DB_PASSWORD', 'password_here' ); /** MySQL のホスト名 */ define( 'DB_HOST', 'localhost' );
WordPress のためのデータベース名は、MAMPのphpMyAdminで作ったデータベースの名前です。
今回は、wordpressとします。
MAMPのMySQL データベースのユーザー名、 MySQL データベースのパスワード、MySQL のホスト名は、MAMPの「Open WebStart page」をクリックしたときに表示される画面に記載してあります。
今回はユーザー名root、パスワードroot、MySQL のホスト名localhostとします。
ここで、 MySQL のホスト名のところですが、portsが3306以外の場合、localhost:3307のように記入します。
変更後 27行目から
// ** MySQL 設定 - この情報はホスティング先から入手してください。 ** // /** WordPress のためのデータベース名 */ define( 'DB_NAME', 'wordpress' ); /** MySQL データベースのユーザー名 */ define( 'DB_USER', 'root' ); /** MySQL データベースのパスワード */ define( 'DB_PASSWORD', 'root' ); /** MySQL のホスト名 */ define( 'DB_HOST', 'localhost:3307' );
変更したら、UTF-8 の BOM なし (UTF-8N) でファイル名をwp-config.phpとして保存(別名で保存・名前をつけて保存)します。
一度、ブラウザを閉じて、MAMPの「Open WebStart page」をクリック。
「My Website」をクリックすると、WordPressインストール画面になります。