新しいMac(MBP Retina) にWeb開発の環境を整備しています。
最初気づいたのは、Mountain Lionには「Web共有」が無い。今となっては、いらない機能なので困りませんが。でもApacheはどこに?と思いましたが、ちゃんと入ってます。PHPも入ってます。
私はXAMPPもMacPortsも使わないのですが、それでもあとMySQLさえ入れればWordPressが動くはずです。
でもMySQLを入れてWordPressを動かすまでちょっとした「険しい道のり」に感じました。「頂はすぐそこ」なんですが、、
(※前置き)以下に参考に動作確認をする前に、Xcodeをインストールしておいてください。それから、rootを有効にしてあなたのアカウントでsudo出来るようにしておいてください。
phpinfoの表示まで
いつものようにPHPの phpinfo() を表示しようとします。
Apacheは以下のコマンドで起動します。
$ sudo /usr/sbin/apachectl start
ちゃんと"_www"ってユーザーにスイッチされてhttpdが起動されています。
'_'で始まるユーザー名、この後もよく使うんですが、MacをUNIXっぽく使うミソなんです。
でもまだPHPはまだ動かない。設定ファイルで有効になっていません。
Apacheの設定ファイルはここで
/etc/apache2/httpd.conf
この行のコメントアウトを外せばPHPも動くようになります。
Macに内蔵のApacheのドキュメントルートですが、ここです。
/Library/WebServer/Documents
日本語環境のFinderだと
/ライブラリ/WebServer/Documents
このディレクトリに .phpファイルをコピーしたり編集したりしたいのですが、権限がなくていちいちパスワード入力しないといけないので、右のようにFinderのディレクトリを選択して「情報を見る」で"Administrators"の「読み/書き」権限を追加します。
続いて、phpinfo() を出力するスクリプトを新規に作成し、
<?php phpinfo();
/Library/WebServer/Documents/phpinfo.php
に保存します。
Safariで確認します。
PHPのバージョン、控えておいてください。
MySQLの前にcmake
私はXAMMPもportsも使わないので、ソースコードを取ってきてビルドします。
MySQLのバージョン5.5以降ではビルドにcmakeを使います。
(「だんだん道が険しくなってきた。」とこの時感じました。)
cmake は /usr/local 以下にインストールすることにします。
まず、ソースコードをWebブラウザでダウンロードします。
(もちろんアドレスをコピってcurlでダウンロードでもいいですよ。)
/usr/local もまだ無いので作ります。その下に src ディレクトリも作ります。
$ sudo mkdir -p /usr/local/src
/usr/local/src "Administrators"の「読み/書き」権限を追加して、ここも書き込めるようにします。
$ cp ~/Download/cmake-x.x.x.tar ./
$ tar xvf cmake-x.x.x.tar
(※x.x.xは最新のstableなバージョン)
続けてビルド
$ cd cmake-x.x.x
$ make
$ sudo make install
これでやっとMySQLをビルドする準備が出来ました。
MySQLのビルドとインストール
MySQLを入れる場所は以下のようにしました。
本体: /usr/local/mysql
データディレクトリ: /var/mysql/data
設定ファイル: /etc/my.cnf
ソースコードの取得。
MySQLのソースコードもWebブラウザでダウンロードして、/usr/local/src にコピー。
$ cd /usr/local/src
$ cp ~/Downloads/mysql-x.x.x.tar /usr/local/src/
$ tar xvf /usr/local/src/mysql-x.x.x.tar
続けてビルド、
$ cd mysql-x.x.x
cmake だからオプションをいろいろ付ける。
$ cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/var/mysql/data \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DENABLE_DTRACE=1 \
-DENABLE_GCOV=1 \
-DWITH_DEBUG=0 \
-DENABLE_DEBUG_SYNC=0
上記のオプションは次のページを参考にした。比較的シンプルで的確なオプションだと思う。
「MySQL 5.5 ソースからビルド - 飛光よ、飛光よ cmake コンフィグレーション」
続けてインストール
$ sudo make install
$ sudo cp support-files/my-medium.cnf /etc/my.cnf
あくまで目的は開発用途ですが、メモリが十分足りているので、mediumの設定ファイルを入れました。
データベース初期化
$ cd /usr/local/mysql
$ sudo scripts/mysql_install_db --user=_mysql --datadir=/var/mysql/data
動作確認
$ cd
$ sudo -u _mysql /usr/local/mysql/bin/mysqld_safe --datadir=/var/mysql/data &
MySQLへの接続が確認出来たら、サーバープロセスを止めます。
$ sudo -u _mysql /usr/local/mysql/bin/mysqladmin -uroot shutdown
ちみに"_mysql"って'_'で始まるユーザーでサーバープロセスを起動してますが、"_mysql"は既にOSに登録済みです。これは便利です。
php.iniファイルの設定
頂はまだ遠いのです。Mountain Lionには開発者向けの php.ini ファイルが入っていません。
しょうがないのでPHPのソースから取ってきます。
過去にリリースしたバージョンのソースコードはGitHubにあるので、そこからダウンロードします。phpinfoを表示して控えたバージョンが必ずあるはずです。
"ダウンロード"に解凍されたフォルダのなかで、php.ini-development というファイル名のファイルがあるのでこれを編集します。
(※vimで編集すれば良いですが、テキストエディタで編集したいときは下のようにしてください。)
「このアプリケーションで開く:」をテキストエディット等に指定する。
※このようにしたのはMountain Lionのセキュリティ設定のためです。
さっき入れたMySQLにつなげるにはsocketファイルのパスを php.ini ファイルに記述する必要があります。
pdo_mysql.default_socket=/tmp/mysql.sock
mysql.default_socket = /tmp/mysql.sock
mysqli.default_socket = /tmp/mysql.sock
「pdoやらmysqliとっととまとめてくれ」思うのですが、PHPは所詮そんなものだから。まあいいや。
ついでに、タイムゾーンの設定をしておきます。ワーニング良く出るから。
date.timezone = Asia/Tokyo
WordPressのインストール
WordPress日本語版のサイトから最新版をダウンロードします。
ダウンロードフォルダに解凍されて"wordpress"フォルダを
/ライブラリ/WebServer/Documents
に移動します。Finder操作でOK。
"wordpress"フォルダにある"wp-config-sample.php"ファイルの名前を"wp-config.php"にします。
WordPress設定ファイルを修正する前に、MySQLを立ち上げて、WordPress用のデータベースとユーザーを登録しておきます。
データベース名: wordpress
ユーザー名: wordpress
ユーザーパスワード: 0000
$ mysql -u root
mysql> create database wordpress;
mysql> GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY '0000' WITH GRANT OPTION;
mysql> \q
さっきの"wp-config.php"ファイルをこれに合わせて修正します。
define('DB_NAME', 'wordpress');
define('DB_USER', 'wordpress');
define('DB_PASSWORD', '0000');
修正したらApacheも起動して、Safariで次のURLにアクセスします。
これまでの設定がうまくいけば、WordPressのインストールページが表示されます。
ここからはWordPressのWebページで設定。
ああ〜やれやれ、おなじみのページが見れました。頂はすぐそこだったのですがね。
※不明点があればコメントください。
よい子はMAMPを入れましょう。
返信削除http://www.mamp.info/en/index.html