MAMPは、無料のローカルサーバーで、簡単にインストールできます。
PHPなどのバージョンも容易に変えられます。

しかし、MAMPのアップデートで、環境が変わってしまうことが多くありました。そこで、MAMPを卒業することにしました。

Dockerなどの仮想環境も考えました。もともと、今までもプロジェクトごとに環境を作るときは、仮想環境を構築してきました。

環境を作らないパターンを想定して、Macに直接入れることにしました。

MySQL

Homebrewでインストールしたいと思います。
現在、「brew install mysql」と打つと、8になります。
5.7を使いたいので、バージョンを指定します。

$ brew install mysql@5.7

パスを通すように指示されるので、それに従います。

.bash_profile or .bashrc

export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"

MySQLのバージョンを切り替えることは少ないですが、もし切り替えたいときは、使用したいバージョンをHomebrewでインストールして、同じようにパスを修正します。

Apache

こちらもHomebrewでインストールしたいと思います。
バージョンは、あまり選ぶ余地がないので、そのままコマンドを打ちました。

$ brew install httpd

あとはhttpd.confを修正しましょう。

PHP

Macでは最初からPHPがインストールされています。
Homebrewでもインストール可能です。
しかし、バージョンなどを切り替えを簡単にするためにPHPBrewを使います。

必要なもの

まず、PHPBrewをインストールするために、依存しているライブラリを入れる必要があります。
私はインストールコマンドを実行して、エラーがでたら入れるようにしました。

https://github.com/phpbrew/phpbrew/wiki/Requirement

インストール

以下にも書いてありますが、ターミナルでコマンドを実行します。

https://github.com/phpbrew/phpbrew

$ curl -L -O https://github.com/phpbrew/phpbrew/raw/master/phpbrew
$ chmod +x phpbrew
$ sudo mv phpbrew /usr/local/bin/phpbrew

初期設定

必要なファイルを生成するために実行するコマンドがあります。

$ phpbrew init

次の行を .bashrc または .bash_profile に追加します。
私は .bash_profile に追加しました。

[[ -e ~/.phpbrew/bashrc ]] && source ~/.phpbrew/bashrc

追加したらbashを再起動しましょう。

バージョンを一覧

インストールできるバージョンを確認します。

$ phpbrew known

表示されたバージョンが古ければ更新します。

$ phpbrew update

ビルドとインストール

PHPのインストールは、自分でソースから構築(ビルド)しなくてはいけません。

PHPには色々な機能があるので、その機能が必要になったとき再びビルドする必要があるからです。

PHPBrewは、その色々な機能をvariants(バリアント)として管理してくれます。

よく使うものが入っているdefault、Apache、MySQLでビルドしてインストールしてみます。

$ phpbrew install 7.2.18 +default +apxs2 +mysql +bz2="$(brew --prefix bzip2)" +zlib="$(brew --prefix zlib)" 

場合によっては明示的にパスを指定しないといけません。

使用と切り替え

useは一時的にバージョンを切り替えます。

$ phpbrew use 5.4.22

switchはデフォルトの使用バージョンを切り替えます。

$ phpbrew switch 5.4.18

起動と終了

準備ができたら起動します。

$ apachectl start
$ mysql.server start

終了します。

$ apachectl stop
$ mysql.server stop

マシン起動時に自動スタートするためにはこんなコマンドがあります。

$ brew services start mysql@5.7
$ brew services start httpd

まとめ

PHPBrewは、PHPがインストールされていないと使えないので、微妙な気がしていました。
しかし、Macのために存在していると思えるくらい便利でした。

ただ、苦労があまり報われない感じがあるので、やはりMAMPがお勧めです。

ボトルネックがすぐわかる、現場のためのWebサーバ高速化教法
窪田優
秀和システム
売り上げランキング: 60,819