我目前正在尝试将Netbeans作为IDE来处理PHP文件。部分工作是让Xdebug正常运行。我已经让Xdebug在Windows机器上工作,但这是我在Linux上的第一次尝试。
我已按照http://xdebug.org/wizard.php
上的说明操作了正确的模块我也有一个正确的phpinfo()输出,Xdebug部分是pressent和一切。我无法发布我的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端口监听)。我从网站上获得了以下小脚本。
<?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
这意味着脚本无法完成运行,只是停在那里,没有其他事情发生。
有人知道可能导致这种情况的原因吗?