私は現在、Netbeans を IDE として PHP ファイルで動作するようにしようとしています。作業の一部は、Xdebug を適切に実行することです。Xdebug は Windows マシンで動作するようになりましたが、これは Linux での初めての試みです。
http://xdebug.org/wizard.phpの指示に従って正しいモジュールを取得しました
Xdebugsection presentent とすべてを含む、正しい phpinfo() 出力もあります。phpinfo() の出力を投稿できませんが、すべて問題ないようです。私の php.ini ファイルの構成は次のとおりです。
[XDebug]
zend_extension="/usr/lib/php5/20090626+lfs/xdebug.so"
xdebug.remote_enable=on
xdebug.remote_log="/var/log/xdebug.log"
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=localhost
xdebug.remote_port=9101
[ZendModules]
Xdebug
ポート 9101 (Xdebug が listen するポート) にのみ接続できるようにしたいのです。そのために、Web サイトから次の小さなスクリプトを取得しました。
<?php
$address = '127.0.0.1';
$port = 9101;
print $port . " " .$address . "\n";
$sock = socket_create(AF_INET, SOCK_STREAM, 0);
print "sock = " . $sock . "\n";
socket_bind($sock, $address, $port) or die('Unable to bind');
print "socket bind worked \n";
socket_listen($sock);
print "listening on sock\n";
$client = socket_accept($sock);
echo "connection established: $client";
socket_close($client);
socket_close($sock);
?>
このスクリプトを実行すると、次の出力が得られます。
michael@michael-Inspiron-N5030:~$ php5 testXdebug.php
9101 127.0.0.1
sock = Resource id #4
socket bind worked
listening on sock
これは、スクリプトの実行が終了せず、そこで停止するだけで他に何も起こらないことを意味します。
誰かがこれを引き起こしている可能性のある考えを持っていますか?