手探りローカル開発環境構築(Mac+homebrew+ruby+Rails+apach+phpMyAdmin)
という訳で自分のMac内に環境を作っていくことに。
まず参考にしたのは下記記事。とっても丁寧でわかりやすい。
次いでphpMyAdmin。これについては下記記事。
※PHPは php -v したらすでに入っていたので飛ばした。
ここで http://localhost/phpmyadmin/ にアクセスしてるのにフォルダ一覧が出てきてしまい困る。phpが動いてない模様。
<解決方法>
↑こちらの記事を参考にさせていただきました。
sudo vi /private/etc/apache2/httpd.conf
して
#LoadModule php7_module libexec/apache2/libphp7.so
↓(コメントアウトの#を外す)↓
LoadModule php7_module libexec/apache2/libphp7.so
で解決。apachがphpを認識してなかったみたい?(なんでデフォルトがコメントアウトになってるんだ…怒)
でようくやくphpMyAdminにアクセスできたんだけど、ログインができない。
<解決方法>
↑こちらの記事を参考にさせていただきました。
sudo mysql
して
ALTER USER 'root'@'localhost' identified WITH mysql_native_password BY 'パスワード';
して /usr/local/etc/my.cnf の最下部に
default_authentication_plugin=mysql_native_password
を追記
なんとかログインできるようになったと思ったらこんなエラー。
phpMyAdmin 環境保管領域が完全に設定されていないため、いくつかの拡張機能が無効になっています。理由についてはこちらをご覧ください。
代わりにデータベースの操作タブを使って設定することもできます。
<解決方法>
の記事を参考にさせていただいて解決。まだ
$cfg['TempDir'] (./tmp/) にアクセスできません。phpMyAdmin はテンプレートをキャッシュすることができないため、低速になります。
というエラーが出ているけどこれは無視。無視というか
の記事をもとに
chown -R _www:_www /usr/local/Cellar/phpmyadmin
とかってサーバーに権限つけてみた(うまくできているかは分からない)けど変わらずエラーが出ている。↑はやらないほうがいいかもしれない。
<よく使ったコマンドたち>
mysqlの開始と停止
sudo mysql.server start
sudo mysql.server stop
Apacheの開始・停止・再起動
sudo apachectl start
sudo apachectl stop
sudo apachectl restart
Apache ウェブサーバが実行中かの確認(?)
ps aux | grep httpd
<参照した記憶のあるフォルダ>
/usr/local/etc/my.cnf
/private/etc/apache2/httpd.conf
/usr/local/Cellar/phpmyadmin/4.8.3/share/phpmyadmin
<所感>
さらっと覚えてる範囲で書いたけど、環境構築に10時間くらいかかった。。
つらみ。
漏れ色々ありそうだから、もっと細かくメモしていけばよかった。
<追記:18/11/03>
MacのOSをMojaveにアップデートしたらphpMyAdminが見れなくなった。
アップデートでhttpd.confからphpmyadmin関連の記述が無くなっていたのが原因だと思われる。(brew uninstall phpmyadminで一回消して、brew install phpmyadmin で入れ直したんだけど、これはしなくて良かった…。)
多分、httpd.confの最下部に
Alias /phpmyadmin /usr/local/share/phpmyadmin
<Directory /usr/local/share/phpmyadmin/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
<IfModule mod_authz_core.c>
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
Order allow,deny
Allow from all
</IfModule>
</Directory>
をもう一回書いてあげるだけでOKなはず。
どうやって入れたっけ?というときに備忘録の自身の記事が役に立った。
関連ファイルの場所を一応メモ。
ローカルサーバーのドキュメント
/Library/WebServer/Documents
httpd.conf
/private/etc/apache2
php
/usr/local/etc/php
phpMyAdmin
/usr/local/share/phpmyadmin
余談:
一時、phpMyAdmin諦めてソフトを探そうとしたんだけど、
有料だったり、無料のSequel Proはクラッシュしたり(新しいMysqlに対応していない?)。そんな中、無料でみつけたのがTeamSQL。
編集はできないけど、見る分には全く問題なし。
あとターミナルの移動を楽ちんにしたくて
を見つけたけどインストールの仕方がイマイチ分からず。
とかやっちゃったけど平気かな。。
開発以外のところでつまづくのホントつらいな〜〜〜