使用 xDebug 在虚拟机上调试项目

Debug project on Virtual Machine with xDebug

我有一个由 Vagrant 设置的虚拟机。它是 Centos 7。除了 Apache 和 mod_php 我还安装了 xDebug,它的配置如下所示:

[xdebug]
zend_extension="/usr/lib64/php/modules/xdebug.so"
xdebug.remote_enable = On
xdebug.remote_autostart = On
xdebug.remote_handler = dbgp
xdebug.remote_port = 9000
xdebug.remote_mode = req
xdebug.remote_connect_back = On
xdebug.idekey = "netbeans-xdebug"

我为我的项目设置了一个虚拟主机,当我在浏览器中将其拉出时,它就可以运行了。 xDebug 完美运行。

然后我想使用 Vagrant Share 使我的项目可以从 Internet 访问。当我启动此服务时,该站点可通过 my-temporary-domain.vagrantshare.com 访问。一切似乎工作正常。但是我无法调试。

我看不到什么问题?我应该配置什么才能让 xDebug 正常工作?

所以我想出了解决办法。

我的客机有一个静态 IP 192.168.1.2。我的主机一——192.168.1.1 当我设置

xdebug.remote_connect_back = Off 

这是默认的,顺便说一句。并制作

xdebug.remote_host = 192.168.1.1

它按预期工作。我认为这是因为我不完全理解的 xDebug 概念。这篇文章帮助: http://walkah.net/blog/debugging-php-with-vagrant/