CentOSでXdebugの設定

PHPの開発にてデバッグしたいときに、EclipseとXdebugを使うと便利。

必要なもの
xDebug 2.0.x
http://www.xdebug.org/ の右にあるSource

あと、サーバーに下記のパッケージが必要。
php-config
phpize

この二つは、which php-config なのでパスが通っているか確認。通っていなければ、php-develをインストール。

xdebug-2.0.x.tgzを解凍して、/usr/local/srcに移動。

/usr/local/src/xdebug-2.0.x/に移動。

phpizeとコマンドを打つとビルドされる。

特に問題がなければ

./configure –enable-xdebug

そして
make

modules/xdebug.soができるので、それを/usr/lib/httpd/module/などにコピー。

php.iniで、
[xDebug]
zend_extension=”/usr/lib/httpd/modules/xdebug.so”
xdebug.remote_enable = On
xdebug.remote_handler = dbgp
xdebug.remote_host = 192.168.xxx.xxx

を追加。
xdebug.remote_hostは自分のPCのIP。設定しないと動かないし、192.168.*.*や、サブネットマスクでの指定などもダメみたいなので、IPを設定。

infophpにて確認
Zend Engine v2.2.0, Copyright(c) の下の行に
with Xdebug v2.0.x, Copyrithg(c)と表示されていればOK

=======================================================

【補足】php.iniに記述するとき、zend_extension=か zend_extension_ts=なのか

ネットで情報を調べると、それぞれの記述で動くとき、動かないときがあった。

まず、phpinfo()などで、以下の2行を確認。

Debug Build => no
Thread Safety => enabled
上記の場合
zend_extension_ts

Debug Build => no
Thread Safety => disabled
上記の場合
zend_extension

Debug Build => Yes
Thread Safety => disabled
上記の場合
zend_extension_debug

Debug Build => Yes
Thread Safety => enabled
上記の場合
zend_extension_debug_ts

The following two tabs change content below.

ロゴスウェア

ロゴスウェア株式会社は、インターネットや情報技術を使って学習に革新的進化をもたらす製品を開発することを目標に、2001年7月に設立されたテクノロジー系ベンチャー企業です。

Comments are closed.