Help us understand the problem. What is going on with this article?

Homebrew で Apache, PHP, MySQL, Composer をインストールして Yii Framework を動かすところまで

More than 3 years have passed since last update.

Homebrew での開発環境構築も少し慣れてきたので、Apache, PHP, MySQL, Composer をインストールして、Yii Framework を動かすところまで書きたいと思います。

実行環境

  • OS X: 10.10
  • Homebrew: 0.9.5

Homebrew のインストール

ターミナルを起動して、以下のコマンドを実行

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  • Mac 本体のパスワードを聞かれるので入力
  • 「... コマンドラインデベロッパーツールをインストールしますか?」みたいなことを聞かれるのでインストールをクリック
  • インストール後、Enter で Homebrew のインストールが開始されます

コマンドラインデベロッパーツールについてのメッセージが出なかった場合は以下を入力。

xcode-select --install

パスを通す ( bash なら .bash_profile に追加)

.bash_profile
export PATH=/usr/local/bin:$PATH
export PATH=/usr/local/sbin:$PATH

Java for OS X 20xx-xxx をダウンロード
以下からダウンロードして、ダブルクリック。
http://support.apple.com/kb/DL1572

Git のインストール
Mac OS X に元々入っているけど、最新のものを。

brew install git

Homebrew 本体のチェック
とりあえずここで Homebrew がおかしくないかチェック。
「Your system is ready to brew.」と出れば OK。警告などが出たらその都度メッセージを読み解きながら対処。

brew doctor

OS X Yosemite でかつ Xcode がインストール済みの場合
6.1 以上でないと、エラーか警告が出るかもしれません。Xcode 6.1 以上をインストールしましょう。

MySQL のインストールと設定

brew install mysql

MySQL の起動

mysql.server start

root パスワードの変更

mysqladmin -u root password
# 新しい root パスワードを入力する

MySQL のセキュリティ設定
( ルートパスワード項目以外はすべてそのままで OK )

mysql_secure_installation

MySQL の停止

mysql.server stop

Apache のインストールと設定

リポジトリを追加

brew tap homebrew/dupes
brew tap homebrew/apache

外部 formula がインストール可になっているか確認

brew search httpd24

Apache のインストール

brew install httpd24

OS X 標準で入ってる Apache ではなく、
Homebrew でインストールしたものか確認してみたり。
( 多分 Yosemite では /usr/sbin/ に httpd, apachectl などが置いてある )

which apachectl
# /usr/local/bin/apachectl と出れば OK。
# /usr/sbin/apachectl と出る場合はターミナルを再起動して再度確認してみる
apachectl -v

http.conf の設定
( 場所は /usr/local/etc/apache2/2.4/ 、DocumentRoot のパスは任意 )

httpd.conf
# php5 のモジュールの追加
LoadModule php5_module /usr/local/opt/php54/libexec/apache2/libphp5.so

# DocumentRoot の変更
DocumentRoot "/Users/jamband/Dropbox/htdocs"

# .htaccessでURLのoverwriteを許可 ( Directory "/Users/jamband/Dropbox/htdocs" 内 )
AllowOverride All

# .php で php を実行できるように MIME タイプの追加 ( IfModule mime_module 内 )
AddType application/x-httpd-php .php

# indexファイルに index.php を使えるように修正 ( IfModule dir_module 内 )
DirectoryIndex index.php index.html

# Virtual hosts のコメントアウトを解除
Include /usr/local/etc/apache2/2.4/extra/httpd-vhosts.conf

# httpd-vhosts.conf には dummy があるので削除し、適当に任意のホスト追加し
# /etc/hosts も書き換えておく

変更後は Apache の再起動

apachectl stop
apachectl start

access_log, error_log の場所は /usr/local/var/log/apache2/ です

PHP のインストールと設定

リポジトリを追加
( homebrew/dupes は Apache をインストール時に追加しましたが PHP 単体でインストールする場合は追加します )

brew tap homebrew/dupes
brew tap homebrew/versions
brew tap homebrew/homebrew-php

外部 formula がインストール可になっているか確認

brew search php

PHP54 のインストール
APC も入れたかったので今回は php54 にしました

brew install php54

インストール後は Caveats を見ながら、またいろいろ修正、設定していきます

php.ini の設定
場所は /usr/local/etc/php/5.4/

php.ini
date.timezone = Asia/Tokyo
default_charset = "UTF-8"
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII

APC, Xdebug のインストール

brew install php54-apc
brew install php54-xdebug

設定ファイルは /usr/local/etc/php/5.4/conf.d/ に置かれます

Composer のインストールと設定

外部 formula がインストール可になっているか確認

brew search composer

Composer のインストール

brew install composer

Yii Framework でユニットテスト及び機能テストを実行

これは読み手が限定されるので、必要な方だけどうぞ。

プロジェクトのルートディレクトに移動して composer.json を作成

composer.json
{
    "require": {
        "yiisoft/yii": "~1.1"
    },
    "require-dev": {
        "phpunit/phpunit": "~3.7",
        "phpunit/phpunit-selenium": "*",
        "phpunit/phpunit-story": "*",
        "phpunit/dbunit": "*",
        "phpunit/php-invoker": "*"
    },
    "config": {
        "vendor-dir": "protected/vendor"
    }
}

ライブラリのインストール
protected/vendor/ が作成され、そこにいろいろ置かれる。

composer install

ユニットテストの実行

cd ./protected/tests
../vendor/bin/phpunit unit

Selenium RC のインストール

brew install selenium-server-standalone

selenium-server-standalone を起動

selenium-server -p 4444

機能テストを実行

../vendor/bin/phpunit functional

各パッケージの削除方法

MySQL

brew uninstall mysql
rm -rf /usr/local/var/mysql

Apache

brew uninstall httpd24
rm -rf /usr/local/etc/apache2/2.4
rm -rf /usr/local/var/log/apache2

PHP

brew uninstall php54
brew uninstall php54-apc
brew uninstall php54-xdebug
rm -rf /usr/local/etc/php
rm -rf /usr/local/opt/php54/

Homebrew本体

インストールしたパッケージなどがすべて削除されるので注意して行なってください。
また、.bash_profile などに追加したパスは手動で削除します。

How do I uninstall Homebrew?

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away