Xdebug:来自任何主机的连接

时间:2013-02-04 16:21:07

标签: php xdebug

我在虚拟机上使用Xdebug(Ubuntu guest)。 我使用Vagrant来管理这些虚拟机,并且我正在配置一个"模式"操作系统克隆它进行Web开发。 问题是我想配置这个ubuntu guest来接受来自任何主机的xdebug连接(xdebug显然是在guest虚拟机中)。

这些说明不起作用:

zend_extension=/usr/lib/php5/20090626+lfs/xdebug.so
xdebug.remote_enable=1
xdebug.remote_handler="dbgp"
xdebug.remote_connect_back=1
xdebug.remote_port=9000

唯一的方法似乎是添加一行:

xdebug.remote_host=sdurzu

" sdurzu"是主机的主机名,但我想创建一个"通用" xdebug的配置,不基于主机名或IP。

有没有办法使用外卡(*)或类似的东西?

2 个答案:

答案 0 :(得分:15)

根据Xdebug settings documentation,如果您启用了remote_host,则会忽略remote_connect_back

  

xdebug.remote_connect_back
  类型:布尔值,默认值:0,在Xdebug中引入> = 2.1

     

如果启用,则忽略xdebug.remote_host设置,Xdebug将尝试连接到发出HTTP请求的客户端。它检查$ _SERVER ['HTTP_X_FORWARDED_FOR']和$ _SERVER ['REMOTE_ADDR']变量以找出要使用的IP地址。
  [...]

此外,remote_connect_back 应该允许任何设备连接到有权访问您的网络服务器的Xdebug。

答案 1 :(得分:4)

如果启用了remote_connect_back,则忽略

remote_host,因此将remote_host设置为主机名是没有意义的。当然,除非你使用的是旧版Xdebug。为了找出底层发生了什么,你需要打开xdebug.remote_log - 这会将连接尝试写入日志文件,并告诉你它是否也无法连接。