当有人从另一台机器点击URL时,PHP调试断点未命中

当有人从另一台机器点击URL时,PHP调试断点未命中,php,phpstorm,xdebug,Php,Phpstorm,Xdebug,我已启用XDebug并按如下方式配置PhpStorm: 这是我的PHP.ini配置文件: zend_extension = "c:\wamp\bin\php\php5.5.12\zend_ext\php_xdebug-2.2.5-5.5-vc11-x86_64.dll" [xdebug] xdebug.remote_enable = on xdebug.profiler_enable = off xdebug.profiler_enable_trigger = off xdebug.profi

我已启用XDebug并按如下方式配置PhpStorm:

这是我的PHP.ini配置文件:

zend_extension = "c:\wamp\bin\php\php5.5.12\zend_ext\php_xdebug-2.2.5-5.5-vc11-x86_64.dll"
[xdebug]
xdebug.remote_enable = on
xdebug.profiler_enable = off
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = "c:/wamp/tmp"
xdebug.show_local_vars=0
xdebug.remote_port=9000
我已经把我的WAMP放到网上了。所以任何人都可以输入我的IP:Port组合,网站就可以正常加载了。当我从我的机器上访问像我的IP:port这样的URL时,调试断点会正常运行。但是,当来自不同机器的其他人点击我的IP:port时,页面加载良好,但断点不会在我的机器上被点击

我希望无论何时有人从不同的机器上点击URL,我的断点都应该在我的机器上被点击


我需要做什么额外的设置吗?

尝试在php.ini中设置远程主机


我猜这只是为了测试,但请注意,如果它试图一次服务多个请求,则会导致页面挂起。

尝试在php.ini中设置远程\u主机


我猜这只是为了测试,但请注意,如果一次尝试服务多个请求,则会导致页面挂起。

1)默认情况下不会自动触发xdebug(调试每个页面的意义是什么,尤其是在代码运行正常的情况下)。您需要告诉xdebug您想要调试它。可以通过将特殊的xdebug参数与页面请求一起传递(通常通过COOKIE;但也可以通过GET/POST参数--“HTTP调试会话”部分)来完成。通常人们使用xdebug浏览器扩展来设置这样的cookie(最简单的方法)。2)您可能希望指定xdebug将连接到的确切主机(IDE正在运行的主机),例如
xdebug.remote\u host=127.0.0.1
。在您的设置中,它可能试图连接回原始计算机(请求来自于此)——您需要查看
phpinfo()
输出的xdebug部分,以查看整个当前配置3)是您和您的朋友(来自另一台计算机的人)用来访问您的站点的“IP:Port”是相同的吗?如果他们不一样。。然后PhpStorm将需要单独的配置(如屏幕截图所示——“主机”必须与请求的配置相匹配)4)如果您想调试每个请求(不管xdebug cookie等),那么您需要在php.ini中使用
xdebug.remote\u autostart=1
(别忘了重新启动Apache/php)@LazyOne:谢谢,你是说像?XDEBUG\u SESSION\u START=10961这样的参数,我也已经添加了,但没有达到断点。使用cookie是不可能的。在URL中添加内容是唯一的选项。1)默认情况下,xdebug不会自动触发(调试每个页面的意义是什么,特别是如果代码运行良好)。您需要告诉xdebug您想要调试它。可以通过将特殊的xdebug参数与页面请求一起传递(通常通过COOKIE;但也可以通过GET/POST参数--“HTTP调试会话”部分)来完成。通常人们使用xdebug浏览器扩展来设置这样的cookie(最简单的方法)。2)您可能希望指定xdebug将连接到的确切主机(IDE正在运行的主机),例如
xdebug.remote\u host=127.0.0.1
。在您的设置中,它可能试图连接回原始计算机(请求来自于此)——您需要查看
phpinfo()
输出的xdebug部分,以查看整个当前配置3)是您和您的朋友(来自另一台计算机的人)用来访问您的站点的“IP:Port”是相同的吗?如果他们不一样。。然后PhpStorm将需要单独的配置(如屏幕截图所示——“主机”必须与请求的配置相匹配)4)如果您想调试每个请求(不管xdebug cookie等),那么您需要在php.ini中使用
xdebug.remote\u autostart=1
(别忘了重新启动Apache/php)@LazyOne:谢谢,你是说像?XDEBUG\u SESSION\u START=10961这样的参数,我也已经添加了,但没有达到断点。使用cookie是不可能的。在URL中添加内容是唯一的选择。谢谢Parris。是的,这只用于测试。我在php.ini中设置了xdebug.remote_host=127.0.0.1,重新启动了wamp服务器,但仍然没有达到断点。谢谢Parris。是的,这只用于测试。我在php.ini中设置了xdebug.remote_host=127.0.0.1,重新启动了wamp服务器,但仍然没有达到断点。