カテゴリー別アーカイブ: Xdebug

Max OS X ローカルにXdebugインストール

OS X 10.9.5  / PHP 5.4.30 の環境です.

1 . Xdebug.so (Xdebugのバイナリ) を入手

こちらのサイトからPHP Remote Debugging Client の Max OS X版をダウンロードして, 解凍します. PHPのバージョンごとにディレクトリがあるので, そのなかのxdebug.soを以下のディレクトリにコピーします (環境によっては20100525の数値が違うかもしれませんが適宜読み替えてください).

sudo cp ./xdebug.so /usr/lib/php/extensions/no-debug-non-zts-20100525/

2. php.ini の設定

まずは, /private/etc/php.ini.default をコピーしておきます.

sudo cp /private/etc/php.ini.default /private/etc/php.ini
sudo chmod 644 /private/etc/php.ini

php.iniの最後に以下の記述を追加します.

[xdebug]
zend_extension=/usr/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so

3. Apacheを再起動

以上をおこなえば, 以下のように with Xdebug … という表記が出ます. あるいは, スクリプトを作成して, phpinfo()を実行すれば, Xdebugのテーブルが表示されるはずです.

$ php -v
PHP 5.4.30 (cli) (built: Jul 29 2014 23:43:29) 
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies with Xdebug v2.2.5-komodo, Copyright (c) 2002-2014, by Derick Rethans

以上を, 確かにやっているのにインストールされない …という場合は, php.iniがきちんと読み込まれているか確認してみてください.

phpinfo()の出力で,

Configuration File (php.ini) Path /etc
Loaded Configuration File /etc/php.ini

おそらく, /etcにあるphp.iniを読み込む設定になっていると思います. Mac OS Xでは/etc は, /private/etc へのシンボリックリンクなので, /private/etc にphp.iniを置いておけば大丈夫なはずです.

実は, 私は /private/etc ではなく, /private/etc/apache2に置いてしまっていたので…php.iniが読み込まれず, あれでもないこれでもないとずいぶん遠回りをしてしまいました…