Mac OS X+PHPでオールインワン環境

インストール編 Mac内にPHP4、5、6を同居させるコツ

繁田 卓二
株式会社 qnote

2008/8/27

PHP 5のインストール

 それではPHPをインストールしてみましょう。今回Apache上では3つのPHPを動作させますが、Apacheの設定でPHPのバージョン指定がない場合には、最新安定版である5.2.6が使用されるようにします。このためPHP 5.2.6のビルドとインストールは特に変わったことをしません。

 まず、ダウンロードディレクトリに移動し、PHP 5.2.6のアーカイブURLをcurlコマンドに渡して、php-5.x.tar.gzとして保存します。

$ cd ~/Downloads
$ curl -o php-5.x.tar.gz -L http://jp2.php.net/get/php-5.2.6.tar.gz/from/this/mirror

 ダウンロードが完了したら、php-5.x.tar.gzを解凍し、フォルダ内に移動します。

$ tar zxvf php-5.x.tar.gz
$ cd php-5.x

 次にビルドオプションを指定し、configureスクリプトを実行します。オプションには次のディレクトリ指定や拡張モジュールの有効化を指定します。

--prefix=/usr/local/lib/php-5.2.6

 ルートディレクトリのパスを指定します。

--with-apxs2

 Apache拡張ツールコマンド(apxs)のパスを指定します。Leopard標準のapxsは/usr/sbin/apxsですが、これを使用すると標準のApacheに組み込まれますので、MacPortsでインストールしたApache環境にあるapxsコマンドのパス「/opt/local/apache2/bin/apxs」を渡します。

--enable-mbstring

 マルチバイト拡張モジュールを有効化します。

--with-iconv=iconvライブラリのパス

 iconvライブラリのパスを指定します。--with-iconvオプション自体は省略可能ですが、省略時にはシステムのiconvライブラリをリンクしますので、/opt/local/のパスを指定し、MacPorts環境のiconvライブラリをリンクさせます。

--with-gd

 GD拡張モジュールを有効化します。GDライブラリはPHPのソースにバンドルされているのでパスを指定する必要はありません。

--with-png-dir/--with-jpeg-dir/--with-zlib-dir

 GD拡張が扱える画像フォーマットを有効にするためのライブラリ指定です。MacPorts経由でインストールしたものを使用しますので、こちらも/opt/local/のパスを指定します。

 以上のオプションをすべてconfigureスクリプトに渡します。

$ ./configure --prefix=/usr/local/lib/php-5.2.6 \
 --with-apxs2=/opt/local/apache2/bin/apxs \
 --enable-mbstring \
 --with-iconv=/opt/local/ \
 --with-gd \
 --with-png-dir=/opt/local \
 --with-jpeg-dir=/opt/local \
 --with-zlib-dir=/opt/local

 実行後、環境のチェックが終了すれば、makeコマンドを実行します。

$ make

 これでインストールの準備が完了です。make installコマンドを管理者権限で実行します。

$ sudo make install

PHP 5の環境設定

 Apache連携のための設定は、後半でまとめて設定しますので、それ以外の環境設定を済ませておきましょう。まず、インストール直後はPHPの設定ファイルが存在しませんので、ソースファイル内のサンプル設定ファイル(php.ini-recommended)からコピーして作成します。コピー先は、「/usr/local/lib/php-5.2.6/lib/php.ini」です。

$ sudo cp php.ini-recommended /usr/local/lib/php-5.2.6/lib/php.ini

 php.iniファイルの細かな設定項目についてはMac OS X環境でも大差ありませんので解説は省略します。ここでは、include_pathの設定のみ行います。今回はPEAR環境もバージョンごとに準備されているため、PEARパッケージディレクトリをinclude_pathに追加します。

 コピーした設定ファイルを開き514行目以降の以下の記述を探します。

; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"

 include_pathの項目がコメント行になっていますので、先頭のセミコロンを外し、以下のパスを指定します。

include_path = ".:/usr/local/lib/php-5.2.6/lib/php"

 次に、コマンドラインで使用するPHPコマンド群のエイリアスを作ります。現状では、/usr/local/lib/php-5.2.6/bin/phpファイルがコマンドの実体ですが、実行するたびに長いパスを入力するのは面倒ですので以下のエイリアスを定義し、「php5」コマンドとして使えるようにします。同様に、PEARパッケージ管理ツールであるpearコマンドも、「pear5」コマンドとして定義します。「~/.profile」ファイルに以下の内容を記述します。

alias php5=/usr/local/lib/php-5.2.6/bin/php
alias pear5=/usr/local/lib/php-5.2.6/bin/pear

 以下のコマンドでファイルの記述を反映させます。

$ source ~/.profile

 ここでエイリアスを実行し動作を確認しましょう。以下のようにphp5コマンドでバージョンを表示され、pear5コマンドでインストール済みのパッケージがリスト表示されれば完了です。

$ php5 -v
PHP 5.2.6 (cli) (built: Jul 15 2008 12:18:21)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies

$ pear5 list
Installed packages, channel pear.php.net:
=========================================
Package          Version State
Archive_Tar      1.3.2   stable
Console_Getopt   1.2.3   stable
PEAR             1.7.1   stable
Structures_Graph 1.0.2   stable

2/4

Index
Mac内にPHP4、5、6を同居させるコツ
  Page1
ライブラリのインストール
PHPのインストール、その前に
Page2
PHP 5のインストール
PHP 5の環境設定
  Page3
PHP 4のインストールと環境設定
PHP 6のインストール
  Page4
拡張子でPHPのバージョンを変える
ディレクトリごとにPHPのバージョンを変える
バーチャルホストごとにPHPのバージョンを変える

Mac OS X+PHPでオールインワン環境

 Mac OS X関連記事
プログラマーを引き付けるMac OS Xの魅力
続々移行するそのワケとは
 Mac一筋という熱狂的なユーザーだけでなく、「面白いことをしたい」と考えるエンジニアもMac OS Xを利用し始めている。いったいなぜだろう
Mac OS XでAMP構築
3通りの方法で整備できる開発環境
 Mac OS Xの上にWebアプリケーションの定番、AMP(Apache+MySQL+PHP)環境を3通りの方法で導入してみましょう
Mac OS Xで動かす軽量プログラミング言語
導入からPHP拡張モジュール組み込みまで
 Leopardでは、インストール直後からいくつかの軽量プログラミング言語が利用できます。早速試してみませんか?
Objective-Cは特殊な言語?
Cocoaの素、Objective-Cを知ろう(1)
 iPhone用アプリケーション開発で注目を集める言語「Objective-C」。C++とは異なるC言語の拡張を目指したこの言語の基本を理解しよう
Mac内にPHP4、5、6を同居させるコツ
Mac OS X+PHPでオールインワン環境(インストール編)
 PHP4の開発は終了したが、移行の問題は残されている。異なるバージョンのPHPをスムーズに切り替えるには?
  Coding Edgeフォーラムフィード  2.01.00.91


Coding Edge フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

>

Coding Edge 記事ランキング

本日 月間