PHP
MySQL
Apache
homebrew

macにPHPとapacheをbrewから入れてみた

大変すぎた。元々入ってるphpとapacheが邪魔しまくってきたのでログを取っておく

CakePHPで作ったプロジェクトが動くところはまでは行くかと思います。


何はともあれ、まずhomebrewの最新化

$ brew update


PHPインストール


PHPの検索

$ brew search php


php7.1(お好きなバージョン)をインストール

$ brew install php@7.1


インストールしたPHPを使うように設定変更

$ brew link php@7.1

上記で出てきた以下のコマンドを実行する

$ echo 'export PATH="/usr/local/opt/php@7.1/bin:$PATH"' >> ~/.bash_profile

$ echo 'export PATH="/usr/local/opt/php@7.1/sbin:$PATH"' >> ~/.bash_profile


設定変わったか確認

$ which php


/usr/local/opt/php@7.1/bin/php



apacheをインスール


元から入ってるapacheの自動起動を止める

$ sudo apachectl stop

$ sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist


apacheを検索

$ brew search httpd


apacheをインストール

$ brew install httpd


設定変更

$ vi /usr/local/etc/httpd/httpd.conf


コメントを外す

#LoadModule userdir_module lib/httpd/modules/mod_userdir.so

#Include /usr/local/etc/httpd/extra/httpd-userdir.conf

#LoadModule rewrite_module modules/mod_rewrite.so


LoadModuleしてる辺りに追記

LoadModule php7_module /usr/local/opt/php@7.1/lib/httpd/modules/libphp7.so

<IfModule php7_module>
AddType application/x-httpd-php .php
</IfModule>


書き換え

#ServerName www.example.com:8080



ServerName localhost

DirectoryIndex index.html



DirectoryIndex index.php index.html

DocumentRoot "/usr/local/var/www"

<Directory "/usr/local/var/www">

DocumentRoot "作成しているプロジェクトのディレクトリ"

<Directory "作成しているプロジェクトのディレクトリ">


上で書き換えたの中を変更

AllowOverride None



AllowOverride All


mysqlをインストール

$ brew search mysql

$ brew install mysql@5.6

$ brew link mysql@5.6

$ echo 'export PATH="/usr/local/opt/mysql@5.6/bin:$PATH"' >> ~/.bash_profile


mysql起動

$ source ~/.bash_profile

$ mysql.server start


mysql.sockの設定

$ mysqladmin version

UNIX socket っという項目の後に書いてあるmysqld.sockファイルの場所を記録

/usr/local/etc/php/7.1/php.iniに記述する

pdo_mysql.default_socket=[sockファイル]

$ apachectl start